プロが教えるわが家の防犯対策術!

 VisualStudio を使っています。
 リソースエディタで、作成したダイアログ・ボックス中に貼り付けた、
スタティックテキスト(Static Text)の文字サイズの変更を個別にしたいのです。

 ダイアログのプロパティには、フォントとサイズを変更できるようになっていますが、個々のスタティックテキストには、ありません。

 どうすれば、一番良いのでしょうか?
 教えてください。

 よろしくお願いします。

 

A 回答 (1件)

WM_INITDIALOGの中でフォントを指定すればよいでしょう。


(MFCならCStatic::SetFont)

case WM_INITDIALOG:
{
HWND hStatic = GetDlgItem(hWnd , IDC_STATIC1 );
HFONT hFont = CreateFont(16,
0,
0,
0,
FW_REGULAR,
FALSE,
FALSE,
TRUE,
ANSI_CHARSET,
OUT_DEFAULT_PRECIS,
CLIP_DEFAULT_PRECIS,
PROOF_QUALITY,
DEFAULT_PITCH,
_T("MS ゴシック") );
SendMessage(hStatic,WM_SETFONT,(WPARAM)hFont, TRUE);
}

参考URL:http://rararahp.cool.ne.jp/cgi-bin/lng/vc/vclng. …
    • good
    • 0
この回答へのお礼

 的確なご回答ありがとうございます。
 リソースエディタだけでは、指定できないんですね。
 打ち消し線の属性は不要なので、FALSE にしました。


static HFONThFont;
HWND hStatic = GetDlgItem(hWnd , IDC_STATIC1 );

hFont = CreateFont(18,/* nHeight */
0,/* nWidth */
0,/* nEscapement */
0,/* nOrientatioon */
FW_DEMIBOLD,/* fnWeight */
(DWORD) FALSE,/* fdwItalic */
(DWORD) FALSE,/* fdwUnderline */
(DWORD) FALSE,/* fdwStrikeOut */
(DWORD) ANSI_CHARSET,/* fdwCharSet */
(DWORD) OUT_DEFAULT_PRECIS,/* fdwOutputPrecision */
(DWORD) CLIP_DEFAULT_PRECIS,/* fdwClipPrecision */
(DWORD) PROOF_QUALITY,/* fdwQuality */
(DWORD) DEFAULT_PITCH,/* fdwPitchAndFamily */
_T("MS ゴシック") );/* lpszFace */
SendMessage(hStatic,WM_SETFONT,(WPARAM)hFont, TRUE);

お礼日時:2005/08/25 02:44

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!

このQ&Aを見た人はこんなQ&Aも見ています


このQ&Aを見た人がよく見るQ&A