Subfenster und Hauptfenster gleichzeitig minimieren



  • Hallo,

    ich habe folgende Problemstellung zu beheben:

    Aus einem Programm heraus öffnet sich per Buttonclick ein Subfenster. Dieses wird per CDialog::DoModal aufgerufen, dadurch ist natürlich das Hauptfenster für Eingaben gesperrt solange das Subfenster auf ist, was auch beabsichtigt ist. Wenn man dieses nun minimiert, hat dies keine Auswirkungen auf das Hauptfenster. Ich möchte das ganze aber gerne so haben, dass wenn man das Subfenster minimiert, auch das Hauptfenster sich automatisch mit minimiert. Dies habe ich zwar schon hinbekommen, allerdings hat man dann keine Möglichkeit mehr, das Fenster erneut widerherzustellen. Denn der Button in der Taskleiste symbolisiert das Hauptfenster welches wegen Aufrufs des Subfensters durch DoModal deaktiviert ist, infolge dessen man darüber nicht die Möglichkeit hat, die Fenster widerherzustellen.

    Weiss jemand wie ich das Problem beheben kann? Ideal wäre es, wenn nach der Minimierung mit einem Klick auf den Button in der Taskleiste, sowohl das aktive Subfenster als auch das weiterhin deaktivierte Hauptfenster widerhergestellt werden könnte.

    Für konstruktive Beiträge bedanke ich mich bereits an dieser Stelle im Vorraus.

    Gruß,

    Noxzor


  • Mod

    Versuch mal einfach das ShowWindow(WS_MINIMIZED) an das Parent anstatt an den Child-Dialog zu versenden.

    Wenn Du die Funktion Desktop-Anzeigen verwendest wiurd ja auch Deine Applikation korrekt minimiert, auch wenn der Dialog offen ist.

    Analysiere dieses Verhalten doch mal mit dem Spy++!



  • Das stimmt, wenn ich windows+d drücke während das Child Window offen ist wird korrekt minimiert.
    Das ShowWindow(WS_MINIMIZED) sende ich ja in dem Moment an das Parent Window wenn ich den Minimierungsbefehl im Childdialog bekomme, daher wenn in OnSize des Childdialogs nType = SIZE_MINIMIZED ist. Oder habe ich irgendwie die Möglichkeit sobald der Minimierungsbutton des Childdialogs gedrückt wurde, nur den ShowWindow(WS_MINIMIZED) Befehl an den Parent zu schicken und nicht an den Childdialog? Wenn ich in OnSize diesen Befehl erst losschicke, ist ja der Minimierbefehl ans Childwindow bereits raus...



  • Ok hat sich erledigt, es funktioniert wenn ich das Hauptfenster mit SW_HIDE verstecke. Trotzdem nochmal vielen Dank für deine Antwort!!!

    Gruß,

    Noxzor


Log in to reply