Hintergrundfarbe Hauptdialog
-
Hallo zusammen
Gibt es für den Hauptdialog auch eine Funktion wo ich die Hintergrundfarbe ändern kann?
Ich habe es mit SetDialogBkColor(....) versucht, aber diese Funktion färbt nur meine anderen Dialoge um.pauli
-
Dafür nutze Du ne Membervariable m_Brush vom Typ CBrush die in OnInitDialog gesetzt wie folget gesetzt wird.
m_Brush.CreateSolidBrush(0x00D8E9EC); // wahlweise kannst Du ach RGB(255,0,0) in die Klammer packenDie Farbe wird in der WM_CTRCOLOR Funktion zurückgegeben.
D.h. Klassenassistent auf und Funktion suchen
HBRUSH CHauptDlg::OnCtlColor(CDC* pDC, CWnd* pWnd, UINT nCtlColor) { HBRUSH hbr = CDialog::OnCtlColor(pDC, pWnd, nCtlColor); pDC->SetBkMode(TRANSPARENT); /* hierdurch hast Du die Hintergrundfarbe auch hinter der Schrift von z.B. Editfeldern, Groupboxen usw.*/ return m_Brush; // hier wird die Hintergrundfarbe geändert. }Ach ja, ganz wichtig. Nutz die Suchfunktion und poste erst wenn Du nicht weiter kommst!
