Problem mit Rückgabe von GetFocus
-
Warum kann ich folgenden Code nicht verwenden um die Adresse des Objektes zu suchen, das gerade den Focus hat
CButton *ausgewaehlt2= (CButton*)GetFocus()wenn ich den Code einsetzte, hat der pointer ausgeweahlt2 bei durchlauf durch das Programm immer den Wert 0x00000000 {CButton hWnd =???}.
Ich hätte noch eine zweite Frage, wie kann ich in einem Programm die Funktionalität erreichen (über Codeeingabe), dass sich ein Bushbutton genau so verhält wie wenn man ihn mit der Maus anklickt.
-
sorry, hab das Geheimnis schon lüften können. War mit der Anwendung in nem anderen Threat. So kann das ja nicht gehen.
Aber die zweite Frage ist noch offen. Gibt es nicht eine Nachricht, die verschickt wird, wenn man mit der Maus auf einen Button drückt. Im Moment mach ich das so, dass ich zuerst den State der Variable ändere und dann die Funktion die mit dem klicken des Buttons verknüpft ist aufrufe.
-
Leite eine Klasse von CButton ab,
und überschreibe die OnLButtonUP:if(this == GetFocus()) /* tue was*/alternativ kannst du für den Button eine CButton Membervariable
erstellen, und mit &my_button == GetFocus() darauf prüfen.Devil
-
schau mal bei www.codeproject.com oder www.codeguru.com nach "ButtonST" die klasse ist recht mächtig und kann einiges an spielkram, damit sollte dein problem auch lösbar sein