Defaultbutton
-
Hallo,
ich erstelle mithBtn = CreateWindowEx(0, WC_BUTTON, _T("Text"), WS_VISIBLE | WS_CHILD | WS_TABSTOP | BS_DEFPUSHBUTTON, 100, 100, 90, 23, hWnd, NULL, NULL, NULL);einen Button. Auf dem Fenster ist kein weiteres Steuerelement.
Wenn ich nun Enter drücke, wird der Code, den der Button auslösen sollte nicht aufgerufen.. Wenn ich ihn mit der Maus anklicke geht aber alles..
Muss man noch irgendetwas beachten, wenn man einen Button mit BS_DEFPUSHBUTTON erstellt?MfG,
Max
-
IsDialogMessage
-
Hallo,
meine MessageLoop sieht so aus:MSG msg; while (GetMessage(&msg, NULL, 0, 0) > 0) { if (!IsDialogMessage(hWnd, &msg)) { TranslateMessage(&msg); DispatchMessage(&msg); } } return (int)msg.wParam;Aber es funktioniert nicht..
Und wenn, dann würde es ja nur für das Fenster, welches das hWnd in IsDialogMessage besitzt, funktionieren.. Geht das nicht auch gleich für alle Fenster (Wie bei GetMessage mit hWnd = NULL)?
-
IsDlgMessage muss für das Parent Fenster angewendet werden. Nicht für das Handle für das die Nachricht ist.
-
IsDlgMessage wird bereits auf das Parentfenster des Buttons angewendet..
-
gib dem button mal den identifier IDOK
-
Den Identifier IDOK? Wie geht das denn, wenn ich das Control mit CreateWindowEx erstelle?
-
ich glaube das kannst du auch selber nachlesen

obs hilft weiß ich allerdings nicht 100%ig
-
Damit funktioniert es! Danke!
@ok: du hättest schon einfach dazuschreiben können, dass man IDOK als HMENU bei CreateWindowEx angibt..