Anfängerproblem!!
-
Ich habe eine einfache Win32 Anwendung erstellt. Mit dem Editor habe ich ein Dialogfeld erstellt, das ich dann so anzeige:
mainwindow = CreateDialog(hInstance, MAKEINTRESOURCE(IDD_HAUPT), 0, NULL);
ShowWindow(mainwindow,nCmdShow);
UpdateWindow(mainwindow);Nur leider kann ich es so nicht mehr schließen. Was mache ich denn nur falsch??
Danke
-
Wie versuchst Du es denn zu schließen?
Geht
EndDialog(mainwindow, 0);
nicht?
-
Ich meine Schließen über das Kreuz in der rechten oberen Ecke
oder in der Titelzeile > rechte Maustaste schließen
geht bei jedem Programm..Bei einer MFC Anwendung funktioniert das, doch bei der Win32 Anwendung muss man das doch alles selber machen (mit den Nachrichten).
Doch wie geht das nur?
-
... case WM_CLOSE: PostQuitMessage(0); break; ...
gibts in deiner WndProc ?
-
Du solltest bei CreateDialog schon auch eine DialogProc angeben. Beispiele, wie die Aussehen kann findest du hier
-
Hi!
Sollte man, wenn kein anderes Fenster Hauptfenster ist, den dialog nick Modal mit DialogBox() (verwende ich immer.. in Tutorials sieht man es auch meist so...) darstellen?
MFG
Xe
-
Kannst du. Was du falsch machst ist wahrscheinlich, dass du
return DefWindowProc(hwnd, uiMsg, wParam, lParam);
da stehen hast. Da muss aber
return FALSE;
hin!
-
@WebFritzi: Newbie2003 hat doch bei CreateDialog gar keine DialogProc angegeben, sondern nur NULL