2tes Fenster???
-
Naja ich klicke zwar auf den Button aber es erscheint kein neues Fenster...
-
Hoi,
1. Bist Du Dir sicher, dass Dein Button auch mit der symbolischen ID 'Testbutton' versehen ist?
2. Welchen Wert bzw. wie initialisierst/definierst Du 'hInstance'?
3. Deine Dialog-Funktion 'Test' ist falsch, siehe MSDN bzw. Hinweis von Xantus.
-
ZU:
- Ja bin mir sicher habe es nochmals kontrolliert!
- HINSTANCE hInstance;
3)hwndGoto = CreateDialog(hinst,
MAKEINTRESOURCE(DLG_GOTO),
hwnd, (DLGPROC) GoToProc);
ShowWindow(hwndGoto, SW_SHOW); ==>Habe es auch so probiert!Kommt aber trotzdem kein Fenster!
-
lol, also hat hInstance keinen definierten Anfangswert
- gute Arbeit^^, bzw. wieso definierst Du 'hInstance' und verwendest 'hinst'
...vllt. mal die etwas 'gründlicher' posten.
Lass den Cast "(DLGPROC)" weg. Wenn Du die Funktion richtig definiert hast, ist der Cast auch nicht nötig. Das verdeckt nur Fehler.Hast Du die Definition Deiner 'Test'-Funktion (oder mittlerweile wohl 'GoToProc'-Funktion) überarbeitet?
-
Doch hat es eh HINSTANCE hInstance=NULL;
Inwiefern überarbeitet?
-
WINAPI nooooobie schrieb:
Doch hat es eh HINSTANCE hInstance=NULL;
Na *das* hast Du in Deinem vorherigen Post aber nicht geschrieben. Außerdem brauchst Du ja den Handle des Moduls in dem die Resource liegt, meistens das aktuelle Modul (dann verwende zur Initialisierung einfach
GetModuleHandle(NULL)).WINAPI nooooobie schrieb:
Inwiefern überarbeitet?
Überarbeitet in so fern, dass das:
WINAPI nooooobie schrieb:
Callback vom Neuen Fenster:
BOOL CALLBACK Test(HWND hWnd, UINT message, WPARAM wParam, LPARAM lParam){ switch (message) { case WM_INITDIALOG: { return TRUE; } } }falsch ist.
-
Falls du das return FALSE meinst..
Habe ich bereits ausgebessert...
-
Aber er kommt noch immer kein Fenster..
-
Man check den Rückgabewert, check GETLASTERROR, GETLASTERROR
-
@T2.0
Sorry keiner wurde als Meister geboren...wenn du schon dann kannst es ja sicher auch zambringen das es läuft und hier posten...
-
Ich hab schon lange kein VC mehr installiert. Was sagt GETLASTERROR??????
-
Was ich nicht anz verstehe ist, dass die Callback Funktion Test funktioniert da ich versucht habe in dem WM_INITDIALOG: eine MessageBox auszugeben!Diese wird auch ausgegeben nur erscheint das Fenster nicht...MFG
-
WS_VISIBLE, ShowWindow, GetLastError, http://msdn2.microsoft.com/en-us/library/ms644996(VS.85).aspx
MfG,
T2.0
-
@T2.0
Ich hatte ja meinen Befehl schon gepostet...der Unterscheidet sich nciht von dem was in der MSDN steht...
-
Aber klaro, sonst würde es ja gehen, oder? Befolge meinen Rat und es wird gehen.
-
na ich will mal nicht so sein.
void ErrorMessage( PTCHAR lpErrorMsg ) { TCHAR szSysMsg[256], szMsg[1024]; DWORD dwEnum; dwEnum = GetLastError(); FormatMessage( FORMAT_MESSAGE_FROM_SYSTEM | FORMAT_MESSAGE_IGNORE_INSERTS | FORMAT_MESSAGE_MAX_WIDTH_MASK, NULL, dwEnum, MAKELANGID(LANG_NEUTRAL, SUBLANG_DEFAULT), szSysMsg, 256, 0 ); _sntprintf( szMsg, 1024, _T("%s(%d)"), szSysMsg, dwEnum ); MessageBox( NULL, szMsg, lpErrorMsg, MB_ICONERROR ); } ... ... if(!CreateDialog(blabla)) ErrorMessage("CreateDialog");
-
Tue ich ja gerne..
Was räts du mir??
Mit WS_Visible passiert iach nichts...
-
zeige mal das ganze prog in einem rutsche
-
Okey...
Meine Prozedur für mein Neues Fenster:
BOOL CALLBACK Test(HWND hWnd, UINT message, WPARAM wParam, LPARAM lParam) { switch (message) { case WM_INITDIALOG: { MessageBox(hWnd,"test,"test",MB_OK); } default: return FALSE; } }Hauptfenster
case WM_COMMAND: switch(LOWORD(wParam))//Was haben wir geklickt?? { case ButtonPlay: //ConnectSockets(hwnd); CreateDialog(hInstance,MAKEINTRESOURCE(IDD_Bewertung),hwnd,Bewertung); break; } break; default: return FALSE; }
-
Okey...
HINSTANCE hInstance=NULL;Meine Prozedur für mein Neues Fenster:
BOOL CALLBACK Test(HWND hWnd, UINT message, WPARAM wParam, LPARAM lParam) { switch (message) { case WM_INITDIALOG: { MessageBox(hWnd,"test,"test",MB_OK); } default: return FALSE; } }Hauptfenster
case WM_COMMAND: switch(LOWORD(wParam))//Was haben wir geklickt?? { case ButtonTest: //ConnectSockets(hwnd); CreateDialog(hInstance,MAKEINTRESOURCE(IDD_Test),hwnd,Test); break; } break; default: return FALSE; }