Prüfen, ob Dialogfenster offen ist...



  • HAllo!

    Ausgangssituation:
    Dialogfensterbasierende Anwendnung:

    Beim Hauptdialogfenster hab ich einen button gemacht, mit dem man ein weiteres Dialogfenster öffnen

    m_dlgNeu.Create(IDD_NEU_DLG,this);
    

    und wieder schliessen kann

    m_dlgNeu.DestroyWindow();
    

    da in dem neuen Fenster grafike angezeigt werden müssen, muss auch mal die invalidate-Funktion ran. die darf aber nur ausgeführt werden, wenn überhaupt das 2. Dialogfenster existiert, also wollt ich einfach das mit einer if-bedingung prüfen, aber wie? dank für die hilfe!! 🙂


  • Administrator

    Könnte so gehen, aber keine Garantie:

    if(::IsWindow(m_dlgNeu.m_hWnd))
    {
        // Fenster existiert.
    }
    else
    {
        // Fenster existiert nicht.
    }
    

    Grüssli



  • Besser

    if(::IsWindow(m_dlgNeu.GetSafeHwnd()))
    {
        // Fenster existiert.
    }
    else
    {
        // Fenster existiert nicht.
    }
    

    😃



  • jau, danke, funktioniert beides, aber warum is die 2. lösung besser???

    danke für die hilfe!
    chris



  • Guck einfach mal in die MSDN... da steht sowas drinne -.-

    Aja... unteranderem ist ein aspekt das es (fast) keine public membervariablen gibt 😃


Anmelden zum Antworten