ダイアログの背景色 一部変更 – プログラミング – Home

ダイアログの背景色 一部変更
 
通知
すべてクリア

[解決済] ダイアログの背景色 一部変更


うっすま
 うっすま
(@うっすま)
ゲスト
結合: 22年前
投稿: 9
Topic starter  

こんにちは。

ダイアログボックスの背景色を一部だけ変更するには
どのようにしたらよろしいでしょうか?
(可能でしょうか?)

よろしくお願いします。


引用未解決
トピックタグ
たいちう
 たいちう
(@たいちう)
ゲスト
結合: 23年前
投稿: 662
 

WM_ERASEBKGND を処理すればよいでしょう。
MFCなら、OnEraseBkgndです。


返信引用
うっすま
 うっすま
(@うっすま)
ゲスト
結合: 22年前
投稿: 9
Topic starter  

有難うございます、

ただ・・・もう少し具体的な事を教えて頂ければと思います。

すみません


返信引用
たいちう
 たいちう
(@たいちう)
ゲスト
結合: 23年前
投稿: 662
 

開発環境が書いてないので、MFCでの説明をします。

クラスウィザードでWM_ERASEBKGNDを処理する関数 OnEraseBkGnd を追加してください。

この関数を...

BOOL CHogeDlg::OnEraseBkgnd(CDC* pDC)
{
CRect rect;
pDC->GetWindow()->GetClientRect(rect);
CBrush brush(RGB(0, 0, 0)); // ダイアログの大部分の色
pDC->FillRect(rect, &brush);
// (A)
return FALSE;
}

... このようにすると、背景が指定した色になります。

(A)の部分で、一部だけを別の色で塗り替えれば良いでしょう。


返信引用
うっすま
 うっすま
(@うっすま)
ゲスト
結合: 22年前
投稿: 9
Topic starter  

たいちろうさん 有難うございました。

#すみません、環境は MFCです。


返信引用

返信する

投稿者名

投稿者メールアドレス

タイトル *

プレビュー 0リビジョン 保存しました
共有:
タイトルとURLをコピーしました