Hintergrundfarbe eines Dialoges



  • Hallo zusammen,

    ich möchte gerne die Hintergrundfarbe eines Dialoges einer MFC Anwendung die ich mit dem Visual Studio 2005 erstelle ändern. Allerdings finde ich nicht wo ich dies machen kann. Könnt ihr mir da bitte einen Tipp geben? Danke!

    Gruß



  • bitteschön

    HBRUSH CProgressDlg::OnCtlColor(CDC* pDC, CWnd* pWnd, UINT nCtlColor) 
    {
    //	HBRUSH hbr = CDialog::OnCtlColor(pDC, pWnd, nCtlColor);
    	HBRUSH hbr = CreateSolidBrush(RGB(30, 230, 230));
    	return hbr;
    }
    

    RGB(30, 230, 230) ist die neue Farbe, die musst du noch anpassen, genauso die Controls auf dem Dialog.

    grüssle 🙂


  • Mod

    Smitty schrieb:

    bitteschön

    HBRUSH CProgressDlg::OnCtlColor(CDC* pDC, CWnd* pWnd, UINT nCtlColor) 
    {
    //	HBRUSH hbr = CDialog::OnCtlColor(pDC, pWnd, nCtlColor);
    	HBRUSH hbr = CreateSolidBrush(RGB(30, 230, 230));
    	return hbr;
    }
    

    RGB(30, 230, 230) ist die neue Farbe, die musst du noch anpassen, genauso die Controls auf dem Dialog.

    👎
    Kein guter Code. Hier wird ein GDI Objekt bei jedem Löschen des Hintergrundes erzeugt und nicht gelöscht.
    Der Brush sollte in der Klasse erzeugt werden und hier nur zurück gegeben werden! Und anschließend gehört er auch entsorgt.



  • danke für eure schnelle hilfe 🙂


Anmelden zum Antworten