Window Problem

Nabi

Erfahrenes Mitglied
Hi , das Fenster soll angezeigt werden JedesMal wenn der Linke Maustaste gedruckt ist, es lässt sich aber nur einmal zeigen, Sobald das
Fenster Geschlossen ist , lässt sich nicht wieder öffnen
was ist die lösung ?

Code:
case VM_LMUTTONDOWN::
{
EditWind(); // hier wird zu CreateWindowEx Gehen. Das Fenster wird Nur Einmal  
                                                               // angezeigt ?
ShowWindow(EditWnd, SW_SHOWDEFAULT);
UpdateWindow(EditWnd);
TextOut(hDC,0,0,"Test",4); // Text Ok Jedesmal Das word "Test" zu sehen
return 0;
break;

}
 
Um da irgendeine Aussage treffen zu können, benötigen wir den Code von EditWind() und deinen Message-Loop (die Peek/GetMessage, Translate/DispatchMessage-Aufrufe).
 
EditWind Code:

Code:
HWND EditWind(){
EditWnd = CreateWindowEx (NULL,"edit","WindowClass", ES_MULTILINE | WS_OVERLAPPEDWINDOW | WS_VISIBLE | WS_VSCROLL ,230,30,250,220,hWnd,hMenu,
hInstance,NULL);
return 0;
}

Message Loop :
Code:
while(GetMessage(&msg, NULL, 0, 0))
	{
        // Nachricht an die Callbackfunktion senden
        TranslateMessage(&msg);
        DispatchMessage(&msg);
    }
und zum schliessen

Code:
case WM_DESTROY:
        {
            PostQuitMessage(0);
            return 0;
            break;
        }

mit ein Mausklick wird das edit fenster geöffnet zum schreiben , dann wenn fertig
fenster schliessen.. aber ich will dass das fenster wieder mit ein Maus klick oder bestimmte taste laden, das geht leider nicht.
Das Fenster ist nicht das Haupt / Anwendugsfenster sondern Child Fenster
 
Zuletzt bearbeitet:
Problem gelöst , aber nur weil ich hMenu weg gemacht habe, stattdessen NULL
die hMenu ist die Menus von Anwendugsfenster , Ich versuche es nun das Child-Fenster sein eigener Menu zu geben .
 
Zurück