Farbe ändern??
-
Kann man den Inhalt von einer Gruppenbox einfärben? Glaube das das Gruppenbox heisst. Das ding wo man mehrer Steuerelemente zur besseren Übersicht zusammenfassen kann. Will nur das was sich innen drin befindet einfärben. Also praktisch den Hintergtund von nur einer Gruppenbox.
Will das zur besseren Übersicht meines Programmes machen. Alle Gruppenboxen verschieden einfärben.
THX
-
Hast du dir das vorher mal mit Paint angeguckt?
Da kriegt man doch nen Farbflash.Ansonsten tippe ich drauf, dass das so geht wie immer: Andere ID geben und dann WM_CTLCOLOR abarbeiten.
Oder eben ownerdrawn, falls das nicht klappt.
-
Also ich versteh den Syntax nicht so ganz.
Ich hab jetzt mit dem Klassenassistent die Funktion WM_CTLCOLOR eingefügt und hab mal bei Google gesucht und hab da denn folgenden Code gefunden, der den Hintergrund des gesamten Dialogs blau oder so färbt.HBRUSH CMyDLG::OnCtlColor(CDC* pDC, CWnd* pWnd, UINT nCtlColor) { HBRUSH hbr = CRecordView::OnCtlColor(pDC, pWnd, nCtlColor); // TODO: Attribute des Gerätekontexts hier ändern HBRUSH hBGBrush = CreateSolidBrush(RGB(128, 184, 223)); return hBGBrush; // TODO: Anderen Pinsel zurückgeben, falls Standard nicht verwendet werden soll return hbr; }
Nur woher weiß das Programm, dass hBGBrush der Hintergrund ist?? Ich hab sonst keinen Code eingefügt. Und wie mache ich den Text transparent?
THX
-
Also, da gibts noch was zu lesen, wie man merkt, welches Control dran ist: http://www.c-plusplus.net/forum/viewtopic-var-t-is-39067.html
Hier nochmal ein Schnipsel von mir:
if (pWnd->GetDlgCtrlID() == IDC_STC_KEIN_KND) { pDC->SetTextColor(RGB(255, 0, 0)); pDC->SetBkMode(TRANSPARENT); HBRUSH B = CreateSolidBrush(::GetSysColor(COLOR_3DFACE)); //Hintergrundfarbe return (HBRUSH) B; }
Desert Storm schrieb:
Nur woher weiß das Programm, dass hBGBrush der Hintergrund ist?? Ich hab sonst keinen Code eingefügt.
Lies mal die Kommentare, die der Assistent geschrieben hat.
-
Ok aber jetzt macht er nur den Hintergrund der Schrift farbig. nich den gesamten Hintergrund der Gruppenbox. Kann man das überhaupt machen?