Festlegen der Hintergrundfarbe des Dialogfelds
Sie können die Hintergrundfarbe Ihrer Dialogfelder festlegen, indem Sie Meldungen für das Dialogfeldfenster behandeln WM_CTLCOLOR
. Die von Ihnen festgelegte Farbe wird nur für das angegebene Dialogfeld verwendet.
Das folgende Codefragment legt beispielsweise die Hintergrundfarbe des Dialogfelds auf dunkelgrau fest. Die OnCtlColor
Memberfunktion wird immer dann aufgerufen, wenn das Dialogfeld neu gezeichnet wird:
HBRUSH CAboutDlg::OnCtlColor(CDC* pDC, CWnd* pWnd, UINT nCtlColor)
{
return (HBRUSH)GetStockObject(DKGRAY_BRUSH);
}
Damit das vorherige Codefragment funktioniert:
- fügen Sie
virtual HBRUSH OnCtlColor(CDC* pDC, CWnd* pWnd, UINT nCtlColor);
demprotected:
Abschnitt der Klassendefinition für Ihr Dialogfeld hinzu. - Fügen Sie der Klassendefinition für Ihr Dialogfeld Folgendes hinzu, und ändern Sie
CMyDialog
den Namen der Dialogklasse:
BEGIN_MESSAGE_MAP(CMyDialog, CDialogEx)
ON_WM_CTLCOLOR()
END_MESSAGE_MAP()
Siehe auch
Arbeiten mit Dialogfeldern in MFC
Verarbeiten von Windows-Meldungen in einem Dialogfeld
Feedback
https://aka.ms/ContentUserFeedback.
Bald verfügbar: Im Laufe des Jahres 2024 werden wir GitHub-Issues stufenweise als Feedbackmechanismus für Inhalte abbauen und durch ein neues Feedbacksystem ersetzen. Weitere Informationen finden Sie unterFeedback senden und anzeigen für