Guybrush Threepwood Geschrieben 29. Oktober 2002 Geschrieben 29. Oktober 2002 Hi, ich hab mit dem Resourceneditor in MSVC++6 einen Dialog erstellt und will diesen als Hauptfenster benutzen. Seltsamerweise funktioniert das nicht. Hier mein ansatz: APIENTRY WinMain(HINSTANCE hInstance, HINSTANCE hPrevInstance, LPSTR lpCmdLine, int nCmdShow) { MSG Msg; hMainWindow = CreateDialog(hInstance,MAKEINTRESOURCE IDD_DOWNLOAD), 0,MainProc); if (hMainWindow = NULL) int i = GetLastError(); ShowWindow(hMainWindow,nCmdShow); while(GetMessage(&Msg,0,0,0)) { TranslateMessage(&Msg); DispatchMessage(&Msg); } return Msg.wParam; } [/PHP] Es tritt kein Fehler auf, aber es wird auch kein Dialog angezeigt. Gruß Guybrush
Guybrush Threepwood Geschrieben 29. Oktober 2002 Autor Geschrieben 29. Oktober 2002 :rolleyes: Uups:D Ist aber trotzdem NULL, also kein Fehler
Klotzkopp Geschrieben 29. Oktober 2002 Geschrieben 29. Oktober 2002 Hast Du die .rc-Datei dem Projekt unter "Source Files" hinzugefügt?
Guybrush Threepwood Geschrieben 29. Oktober 2002 Autor Geschrieben 29. Oktober 2002 ja ,hab ich und die resource.h included , sonst würde er ja nen Fehler bringen das er IDD_DOWNLOAD nicht kennt.
Klotzkopp Geschrieben 29. Oktober 2002 Geschrieben 29. Oktober 2002 Ich hab das hier mal nachgebaut, und es funktioniert. Was liefert GetLastError denn zurück?
Guybrush Threepwood Geschrieben 29. Oktober 2002 Autor Geschrieben 29. Oktober 2002 Das liefert Null zurück, vielleichts liegts ja an der MainProc: BOOL CALLBACK MainProc(HWND hWnd, UINT Msg, WPARAM wParam, LPARAM lParam) { switch(Msg) { case WM_DESTROY: { EndDialog(hWnd,0); PostQuitMessage(0); return 0; } } return 0; } [/PHP]
Cool-Matthias Geschrieben 29. Oktober 2002 Geschrieben 29. Oktober 2002 Hi, versuch mal bei der WM_INITDIALOG eine 1 oder TRUE zurückzugeben.
Klotzkopp Geschrieben 29. Oktober 2002 Geschrieben 29. Oktober 2002 Also, das hier läuft: #include <windows.h> #include "resource.h" HWND hMainWindow; INT_PTR CALLBACK MainProc( HWND hwndDlg, UINT uMsg, WPARAM wParam, LPARAM lParam ) { switch( uMsg ) { case WM_COMMAND: switch( wParam ) { case IDCANCEL: PostQuitMessage( 0 ); break; default: break; } break; default: break; } return 0; } APIENTRY WinMain(HINSTANCE hInstance, HINSTANCE hPrevInstance, LPSTR lpCmdLine, int nCmdShow) { MSG Msg; hMainWindow = CreateDialog(hInstance, MAKEINTRESOURCE(IDD_DIALOG1 ), 0, MainProc); ShowWindow(hMainWindow,nCmdShow); while(GetMessage(&Msg,0,0,0)) { TranslateMessage(&Msg); DispatchMessage(&Msg); } return Msg.wParam; } [/CODE]
Guybrush Threepwood Geschrieben 29. Oktober 2002 Autor Geschrieben 29. Oktober 2002 Ich hab mal deinen Code ausprobiert Klotzkopp und es hat auch nicht geklappt, bis ich einen anderen Dialog erstellt habe. Mit dem gings dann. In meinem IDD_DOWNLOAD befindet sich eine Progress Bar und wenn ich die weg mache, dann gehts, sobald ich sie wieder rein gehts nicht mehr:confused:
Guybrush Threepwood Geschrieben 29. Oktober 2002 Autor Geschrieben 29. Oktober 2002 Jetzt gehts. Danke! Gruß Guybrush
Empfohlene Beiträge
Erstelle ein Benutzerkonto oder melde Dich an, um zu kommentieren
Du musst ein Benutzerkonto haben, um einen Kommentar verfassen zu können
Benutzerkonto erstellen
Neues Benutzerkonto für unsere Community erstellen. Es ist einfach!
Neues Benutzerkonto erstellenAnmelden
Du hast bereits ein Benutzerkonto? Melde Dich hier an.
Jetzt anmelden