Dialog Problem..



  • Hallo zusammen

    Mein problem ist folgendes..

    Ich Rufe vom HaupDialog aus mit eine button click ein zweites Dialogfeld.
    das zweite Dialog soll Farbig erscheinen.

    Das macht es auch. Aber wenn ich das Zweite Dialog mit IDOK Beende.
    Und es wieder öffenen möchte bekomme ich ein fehler meldung.
    Das zweite Dialog läst sich nicht mehr öffnen.

    Wenn ich m_Rot.CreateSolidBrush(RGB(255,153,255)); aus klammere
    Kann ich das Zweite Dlg ohne Fehler meldun öffen und schließen auch mehr mals.

    Aber ich brauche Farben für Textfeld usw..

    was mache ich hier Falsch?

    HBRUSH PluDlg::OnCtlColor(CDC* pDC, CWnd* pWnd, UINT nCtlColor)
    {
    HBRUSH hbr = CDialog::OnCtlColor(pDC, pWnd, nCtlColor);

    // TODO: Attribute des Gerätekontexts hier ändern

    if(pWnd->GetDlgCtrlID()==IDC_HGr2)
    {
    m_Rot.CreateSolidBrush(RGB(255,153,255));
    return m_Rot;

    }
    // TODO: Anderen Pinsel zurückgeben, falls Standard nicht verwendet werden soll
    return hbr;
    }



  • Wenn m_Rot eine Membervariable ist, warum erstellst Du es immer wieder neu?
    Mach das CreateSolidBrush nur einmal im OnInitDialog.


Log in to reply