Window verstecken nicht zerstören?



  • Hi,

    ist es möglich ein Window zu verstecken, so dass der User keine Eingaben mehr tätigen kann, aber alle Zustände von den Controls (Radiobuttons, Checkboxen etc.) erhalten bleiben???

    Bei DestroyWindow wird dies ja auf nimmawiedasehen gekillt.

    Kurz zu meiner Anwendung: hab eine SDI Application mit einem Hauptmenu (bestehend aus CButtons), wird einer dieser Buttons gedrück gelangt man in ein weiteres Menü (das Hauptmenü ist jetzt aus Platzgründen nicht mehr zu sehen); in diesem Menü können einige Einstellungen vorgenommen werden; mit dem OK-Button gelangt man wieder zurück ins Hauptmenü. Sollte der gleiche Button nochmals gedrückt werden, so sollte der aktuelle Zustand der Items (Radiobuttons etc.) wieder dargestellt werden.

    Alle Untermenüs sind im ResourcenEditor als Dialoge angelegt; lediglich die Buttons werden "Ownerdrawn" in der jeweiligen Ansicht (OnInitialUpdate()).

    Gruß
    Henrick



  • ::ShowWindow( hwnd, SW_HIDE ); // unsichtbar
    ::ShowWindow( hwnd, SW_SHOW ); // sichtbar

    hwnd ist das Handle auf dein Fenster.



  • danke für den Hinweis! Ist es auch möglich zu überprüfen ob das Fenster bereits existiert oder nur versteckt ist?



  • Wenn du dir die Angaben zur Klasse CWnd mal im MSDN oder bei Google angeschaut hättest, dann hättest du das auch finden können.
    Die Memberfunktion IsWindowVisible() sollte dir hier weiterhelfen.


Log in to reply