掲示板システム
ホーム
アクセス解析
カテゴリ
ログアウト
指定のフォントを表示するには? (ID:33557)
名前
ホームページ(ブログ、Twitterなど)のURL (省略可)
本文
KHE00221さん。 >FontName だけ変えて Charset を変えてない気がするんだけど? >でハングル表示できるけど Charsetですか。確かにこれでハングルもちゃんと表示されますね。 でもなんでGB2312なんだろう、、と思って他のも試してみたところ、 CHINESEBIG5_CHARSET GB2312_CHARSET HANGEUL_CHARSET THAI_CHARSET これらでもちゃんと表示されました。 それはそうと。 龍猫さんの書き込みからするとEditやMemoはUnicode文字の入力と表示は対応してるようなのですが、Delphi2007+Vistaの環境だとそうなのでしょうか。 だとするとGetWindowTextW APIを使えばいけるのかもしれません。 function GetText(hHandle: HWND): WideString; //ウィンドウハンドルhHandleのテキストを返す var li_Len: Integer; lp_Text: PWideChar; begin Result := ''; li_Len := GetWindowTextLengthW(hHandle) + 1; if (li_Len > 0) then begin lp_Text := AllocMem(li_Len * 2); try GetWindowTextW(hHandle, lp_Text, li_Len); Result := WideString(lp_Text); finally FreeMem(lp_Text); end; end; end; procedure TForm1.Button1Click(Sender: TObject); var lrc_Rect: TRect; begin Image1.Canvas.FillRect(Image1.ClientRect); lrc_Rect := Image1.ClientRect; DrawTextW(Image1.Canvas.Handle, PWideChar(GetText(Edit1.Handle)), -1, lrc_Rect, DT_NOPREFIX); end; だめかな、、
←解決時は質問者本人がここをチェックしてください。
更新する
戻る
掲示板システム
Copyright 2021 Takeshi Okamoto All Rights Reserved.