ダイアログボックス上の文字の色を任意の色に変更する方法です。
解説
ダイアログボックス上にあるスタティックコントロールなどのコントロールの色を変更するには、メッセージハンドラOnCtlColor( )で色を設定します。
サンプルは、Visual StudioでWin32アプリケーションを作成した時に自動的に生成されるバージョン情報表示のダイアログボックス(クラス
CAboutDlg)上に2つのスタティックコントロールIDC_STATIC1とIDC_STATIC2を配置し、この2つのスタティックコントロールを青色にしています。
サンプル
HBRUSH CAboutDlg::OnCtlColor(CDC* pDC, CWnd* pWnd, UINT nCtlColor)
{
HBRUSH hbr = CDialog::OnCtlColor(pDC, pWnd, nCtlColor);
// TODO: この位置で DC のアトリビュートを変更してください
// 文字を青色にする
switch ( pWnd->GetDlgCtrlID() )
{
case IDC_STATIC1:
case IDC_STATIC2:
pDC->SetTextColor( RGB(0,0,255) );
}
// TODO: デフォルトのブラシが望みのものでない場合には、違うブラシを返してください
return hbr;
}