したらばTOP ■掲示板に戻る■ 全部 1-100 最新50 | |

【とりあえず】初めての方。足跡どうぞ【足跡】

162名無しさん:2015/03/08(日) 06:00:47
>>161
JUN 様

ImmGetCompositionFontでフォント名の取得がうまかいかないとのことですが
考えられる個所はAPI関数名ではないかと推測します。
/*エイリアスにはANSI系関数を指定する
/*IMMGETCOMPOSITIONFONT lib "imm32.dll" Alias "ImmGetCompositionFontA" (


LOGFONT構造体の lfFaceName メンバの定義はF-BASICでは次のようになります。

#define LF_FACESIZE 32
type LOGFONT
lfHeight As Long
lfWidth As Long
〜〜〜(省略)〜〜〜
lfFaceName(LF_FACESIZE-1) as Byte
end type
このように通常はByte型ですが、F-BASICでは扱いづらいので、String*n型に
することも可能だと思います。 (提示されたソースではそのようで)

lfFaceName as String * LF_FACESIZE

このSTRING固定長型の文字桁数は 32 (LF_FACESIZE)です。
これはANSI系関数を使用する場合のサイズです。UNICODE系ではサイズが異なります。
誤ってUNICODE系関数を呼び出した場合、文字化けやメモリ破壊が発生します。


新着レスの表示


名前: E-mail(省略可)

※書き込む際の注意事項はこちら

※画像アップローダーはこちら

(画像を表示できるのは「画像リンクのサムネイル表示」がオンの掲示板に限ります)

掲示板管理者へ連絡 無料レンタル掲示板