メガソフト トップサポートユーザーフォーラム > テキストエディタ MIFESフォーラム
テキストエディタ MIFESフォーラム
[フォーラムトップ]
一括表示

現在の表示フォントの設定を取得する方法 - Minori 2011/04/26(Tue) 10:48 No.2717
表示フォントの設定を変更するには chgfont()を利用すればよいのはわかったのですが現在の表示フォントの設定を取得する方法がわかりません。ご存じの方、ご教示の程 宜しくお願いします。

Re: 現在の表示フォントの設定を取得する方法 - matsu 2011/04/26(Tue) 14:22 No.2718
> 表示フォントの設定を変更するには chgfont()を利用すればよいのはわかったのですが現在の表示フォントの設定を取得する方法がわかりません。ご存じの方、ご教示の程 宜しくお願いします。

カスタマイズファイルを直接開いて検索しないと取得できないと思います。
カスタマイズファイルのパスは必要であれば変更してください。
また、MIFESを起動してからフォントを変更した場合変更後のフォントは反映されていませんでした。

*TEST

gsearch(GS_1DIR,0x0100,"FONT_HEIGHT","MIW.INI","C:\Documents and Settings\All Users\Documents\MEGASOFT\MIFES8")
replace(0x21,0x0102,"*,",0,0,"")
@1=getline(@str1)
close()
messagebox(@str1,"フォント",MB_OK)

Re^2: 現在の表示フォントの設定を取得する方法 - Minori 2011/04/26(Tue) 15:32 No.2719
素早い回答ありがとうございます。

1行が長いファイルがあるので フォントサイズ 9 で "FIXEDSYS" と "MS ゴシック" を交互に切り替えたいと思ったのですが現在の設定を取得できないとすると、別々のキーにマクロを割り当てるしかないでしょうか。

Re^3: 現在の表示フォントの設定を取得する方法 - matsu 2011/04/27(Wed) 10:34 No.2720
> 素早い回答ありがとうございます。
>
> 1行が長いファイルがあるので フォントサイズ 9 で "FIXEDSYS" と "MS ゴシック" を交互に切り替えたいと思ったのですが現在の設定を取得できないとすると、別々のキーにマクロを割り当てるしかないでしょうか。

chgfontで設定したフォントを保存しておけばいいのでは?

*TEST

@1=strcmp("",@str1)
if @1==0
gsearch(GS_1DIR,0x0100,"FONT_HEIGHT","MIW.INI","C:\Documents and Settings\All Users\Documents\MEGASOFT\MIFES8")
replace(0x21,0x0102,"*,",0,0,"")
@1=getline(@str1)
close()
else
@1=getprof(1,@str1)
endif

@2=strcmp("MS ゴシック",@str1)
if @2==0
chgfont(FONT_BOTH,9,"FIXEDSYS")
setprof(1,-1,"FIXEDSYS")
sprintf(@str1,"%s","FIXEDSYS")
else
chgfont(FONT_BOTH,9,"MS ゴシック")
setprof(1,-1,"MS ゴシック")
sprintf(@str1,"%s","MS ゴシック")
endif

Re^4: 現在の表示フォントの設定を取得する方法 - Minori 2011/04/27(Wed) 18:01 No.2721
そのまま利用させて頂きます。

ありがとうございました。