【发布时间】:2012-02-01 04:35:24
【问题描述】:
我正在尝试捕获在 wx.Frame 中发生的键盘事件,我希望以下代码能够捕获这些事件。但是,当我运行代码时,永远不会调用处理程序 OnKeyDown:
import logging as log
import wx
class MainWindow(wx.Frame):
def __init__(self, parent, title):
wx.Frame.__init__(self, parent, title=title, size=(200,100))
self.Bind(wx.EVT_KEY_DOWN, self.OnKeyDown)
self.Bind(wx.EVT_KEY_UP, self.OnKeyDown)
self.Bind(wx.EVT_CHAR, self.OnKeyDown)
self.SetFocus()
self.Show(True)
def OnKeyDown(self, event=None):
log.debug("OnKeyDown event %s" % (event))
if __name__ == "__main__":
app = wx.App(False)
gui = MainWindow(None, "test")
app.MainLoop()
如果有人知道如何做到这一点,我将不胜感激。
【问题讨论】: