Seite 1 von 1

wx.EVT_KEY_DOWN --> Funktioniert bedingt

Verfasst: Montag 8. Mai 2006, 12:43
von freze
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

Verfasst: Montag 8. Mai 2006, 13:05
von Buell
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.

Verfasst: Montag 8. Mai 2006, 13:10
von pr0stAta
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