Farbe der Listbox ändern
-
Hi Leute,
weiß jemand, wie ich die Farbe einer Listbox ändern kann??? Finde keine Funktion dafür. Hoffe mir kann jemand helfen.
MFG SPAXX
-
Servus,
HBRUSH CDeinDlg::OnCtlColor(CDC* pDC, CWnd* pWnd, UINT nCtlColor) { HBRUSH hbr = CDialog::OnCtlColor(pDC, pWnd, nCtlColor); if (pWnd->GetDlgCtrlID()==ID_CONTROL) { pDC->SetTextColor(RGB(255,0,0)); //Textfarbe pDC->SetBkMode(TRANSPARENT); HBRUSH B = CreateSolidBrush(RGB(192,192,192)); //Hintergrundfarbe return (HBRUSH) B; } return hbr; }Fügst die Funktion OnCtlColor ein und schreibst das darein. ID_CONTROL muss die ID deiner ListBox sein.
Der Rest erklärt sich glaube ich von selbst. *faulist*
Viel Spass
*winke*
HellsgorePS: Glaube das steht auch irgendwo in der FAQ - MFC
-
ich habe jetzt in der View die Methode angelegt. Und der bringt mir bei
HBRUSH hbr = CDialog::OnCtlColor(pDC, pWnd, nCtlColor);
einen Fehler. Der sagt, das ich auf die Methode keinen Zugriff habe, da sie protected ist. Macht das einen Unterschied, ob ich eine Dialogfeldbasierende oder eine SDI Anwendung??? habe nämlich SDI.
-
sorry, mein Fehler. Jetzt gehts. thx
-
aber noch ne kleine Frage. Kann ich da auch die Hintergrundfarbe des Programms ändern bzw. Die Button Farbe etc.?? wenn ja wie?? Meine Versuche das abzuleiten sind fehlgeschlagen.