Anzeige Problem
-
Hallo zusammen, habe da ein kleines Problem und zwar werden nicht alle Komponenten bei dem unten aufglistetem Code angezeigt, bzw nur die editbox nicht aber der Button. Wiso?
LRESULT CALLBACK WndProc(HWND hWnd, UINT message, WPARAM wParam, LPARAM lParam) { static HWND hClose, hEdit; switch (message) { case WM_CREATE: { hClose = CreateWindow("button","Close", WS_CHILD | WS_VISIBLE, 0, 0, 0, 0, hWnd, NULL, ((LPCREATESTRUCT) lParam) -> hInstance, NULL); hEdit = CreateWindowEx(WS_EX_CLIENTEDGE, "Edit", "EditBox" , WS_CHILD | WS_VISIBLE, 0, 0, 0, 0, hWnd, NULL, ((LPCREATESTRUCT) lParam) -> hInstance, NULL); return 0; } case WM_SIZE: { MoveWindow(hClose, LOWORD(lParam) / 2 - 80, HIWORD(lParam) - 30, 160, 22, TRUE); MoveWindow(hEdit, 0, 0, LOWORD(lParam), HIWORD(lParam), TRUE); return 0; } case WM_COMMAND: { if(lParam == (LPARAM)hClose) { if (HIWORD(wParam) == BN_CLICKED) SendMessage(hWnd, WM_CLOSE, 0, 0); } return 0; } case WM_DESTROY: { PostQuitMessage(0); return 0; } } return DefWindowProc(hWnd, message, wParam, lParam); }
[ Dieser Beitrag wurde am 23.12.2002 um 18:30 Uhr von eonic+d editiert. ]
-
Deine Edit-Box füllt ja das gesamte Fenster aus, der Button liegt halt darunter!
-
Probier mal folgendes: SetWindowPos(hClose,HWND_TOP,0,0,0,0,SWP_NOMOVE|SWP_NOSIZE);
Oder versuche den Button nach dem Edit-Control zu erstellen!
-
Leider funktioniert dein Vorschlag nicht, hat noch einer eine Idee?
-
Teste doch mal bei WM_CREATE, ob CreateWindow fehlschlägt.
Aber bitte beidesmal.Einen Button und ein Edit der Größe 0 zu erstellen, ob das gut geht?
-
Ja, schlägt fehl da die Anzahl der Argumente nicht übereinstimmen.
Könnte mir einer mal ein funktionierendes Beispiel geben mit einer EditBox und einem Button?
-
LRESULT CALLBACK MainProc(HWND hWnd,UINT uMsg,WPARAM wParam,LPARAM lParam) { static HWND hEdit,hButton; switch(uMsg) { case WM_CREATE: { hEdit = CreateWindowEx(0,TEXT("edit"),0,WS_CHILD | WS_VISIBLE | WS_BORDER | ES_MULTILINE,5,5,200,200,hWnd,(HMENU) EDIT_ID,hInst,0); hButton = CreateWindowEx(0,TEXT("button"),TEXT("Klick mich!"),WS_CHILD | WS_VISIBLE | BS_PUSHBUTTON,5,215,200,16,hWnd,(HMENU) BUTTON_ID,hInst,0); return 0; } break; case WM_DESTROY: { PostQuitMessage(0); return 0; } break; } return DefWindowProc(hWnd,uMsg,wParam,lParam); }
Funktioniert bestens.
cya
-
Klick mich
Fi*k mich! :p
-
Wieso nennst du dich eigentlich 'Riebl'? Der _echte_ Riebl kann jetzt unmöglich online sein, sonst wäre er in icq und ich würde ihn sehen.
cya
-
Danke, geht prima
-
Das freut mich.
Fröhliche Weihnachten & cu
-
NERV NED MAGIC CREATOR.
-
Wenn's dich nervt, hör' nicht hin!
cya