Radiobutton
-
Hallo!
Habe gerade mit BS_RADIOBUTTON | WS_CHILD | WS_VISIBLE einen Button erstellt.
Jetzt habe ich zwar einen Radio-Button, dieser lässt sich aber nicht auswählen. Während man draufklickt sieht man zwar kurz den Fokus auf diesem Button, so richtig auswählen lässt er sich aber nicht.
Gleiches Problem besteht bei Verwendung von BS_CHECKBOX.
Außerdem wird kein WM_COMMAND gesendet wenn man draufklickt.Was mache ich falsch?
Danke!
mfg
-
zeig' mal den code wie du den button erstellst, und wie du die WM_COMMAND abarbeitest.
-
Du suchst wahrscheinlich BS_AUTORADIOBUTTON bzw. BS_AUTOCHECKBOX
-
Nein, geht leider auch nicht.
So erstelle ich die Controls:
HWND rb1 = CreateWindow("BUTTON", "Option1", BS_RADIOBUTTON | WS_CHILD | WS_VISIBLE, 10, 10, 100, 20, mainWindow, NULL, NULL, NULL);
Und das ist ein Ausschnitt aus der Message-Verarbeitung:
switch (msg){
case WM_COMMAND:
if (LOWORD(wParam) == ID_DATEI_EXIT)
PostQuitMessage(0);Ich weiß, dass ich hier nur auf das Exit-Menü reagiere, aber er geht mir nicht einmal in die Callback-Funktion rein. Wenn ich gleich ganz oben beim swich einen Breakpoint setze kommt er dort nie hin. Andere Controls (normale Buttons) funktionieren aber. Ich habe auch als Parent-Window sicher das Fenster angegeben, dem ich die Callback-Funktion zugewiesen habe.
Irgendwelche Ideen?
mfg
-
1.) Ich hatte gemeint, dass du anstelle von BS_RADIOBUTTON BS_AUTORADIOBUTTON verwenden sollst
2.) Bei CreateWindow solltest du auf jeden Fall noch hInstance angeben und nach Möglichkeit auch noch eine ID vergeben, damit du nachher auch weißt, von welchem Button die Nachricht kommt
-
Danke jetzt geht es!
Habe BS_AUTORADIOBUTTON nicht statt BS_RADIOBUTTON genommen, sondern zusätzlich. Hab ich mir auch nichts dabei gedacht...
mfg