wx.EVT_KEY_DOWN --> Funktioniert bedingt

Plattformunabhängige GUIs mit wxWidgets.
freze
User
Beiträge: 8
Registriert: Montag 14. Februar 2005, 22:02

wx.EVT_KEY_DOWN --> Funktioniert bedingt

Beitragvon freze » Montag 8. Mai 2006, 12:43

Hallo,
Ich verwende in meiner wx-Applikation relativ erfoglreich das EVT_KEY_DOWN Event.

Code: Alles auswählen

 wx.EVT_KEY_DOWN(self, self.onKeyDown )


Erfolgreich ist es dann, wenn ich die Gui aufrufe und eine taste druecke.
Nicht erfolgreich, wenn ich das Fenster ikonisiere und anschließend wieder deikonisiere bzw. minimieren und maximieren. Das Event wird nach dem maximieren anscheinend nichtmehr ausgeloest

Hatte jemand evtl. mal ein aehnliches Problem

Gruß, Tobi
Buell
User
Beiträge: 90
Registriert: Samstag 29. Oktober 2005, 14:17

Beitragvon Buell » Montag 8. Mai 2006, 13:05

Ich denke mal das Problem liegt darin, dass nach dem maximieren des Fensters der Frame (an den das Event gebunden ist) nicht mehr focussiert ist. Mir fällt grad auf die schnelle nix ein, aber ich würde in etwa so vorgehen, ein OnPaint Event (wie in C - sofern es das in Python gibt) zu verwenden und damit zu focussieren, dann sollte das KeyDown Event auch wieder gehen.
pr0stAta
User
Beiträge: 271
Registriert: Freitag 17. September 2004, 11:49
Wohnort: Bremen

Beitragvon pr0stAta » Montag 8. Mai 2006, 13:10

Hi freze, ich stimme Buell zu. Dies ist bestimmt ein Focus Problem.
Vielleicht helfen dir diese Funktionen:
> SetFocus()
> SetFocusIgnoringChildren()

Oder gleich noch hilfreicher ist vielleicht dieser Auszug aus der wxPython
Mailing List
http://aspn.activestate.com/ASPN/Mail/M ... rs/3116791

Gruss

Wer ist online?

Mitglieder in diesem Forum: Bing [Bot]