Wie kann ich meine Dialogfenster unterscheiden?

Diese Seite verwendet Cookies. Durch die Nutzung unserer Seite erklären Sie sich damit einverstanden, dass wir Cookies setzen. Weitere Informationen

  • Wie kann ich meine Dialogfenster unterscheiden?

    Hallo.
    In meinem MFC-Programm erzeuge ich durch einen Mausklick zwei nichr-Modale Dialogfenster mit jeweils einem „OK“ und einem „Abbrechen“ Button.
    Beide Instanzen werden von der selben Dialogfenster Klasse erzeugt.

    Wenn ich nun auf den „OK“-Button in einem Dialogfenster klicke schicke ich mit
    m_pView->PostMessage(WM_GOODBYE, IDOK);

    eine Message an das übergeordnete Fenster.

    Im Übergeordneten Fenster werte ich die Message mit
    LRESULT CEx07aView::OnGoodbye(WPARAM wParam, LPARAM lParam)
    {
    TRACE("CEx07aView::OnGoodbye %x, %lx\n", wParam, lParam);

    m_pDlg[0]->DestroyWindow();
    m_pDlg[1]->DestroyWindow();

    return 0L;
    }

    aus und schliesse beide Dialogfenster.

    Wie kann ich herausbekommen in welchem Dialogfenster ich den „OK“-Button geklickt habe um nur dieses Dialogfenster zu schliessen?

    Die „TRACE("C...“ Anweisung zeigt mir mit "wParam" nur an welchen Button ich angeklickt habe aber nicht in welchem Dialogfenster er sich befindet.
    Nur wenn ich weis in welchem der Dialogfenster ich den Button angeklickt habe kann ich das entsprechende Dialogfenster schliessen.

    allesc