我正在编写一个界面,我想让用户点击一个按钮,然后捕捉他的下一次按键。
我现在可以捕捉键盘上的所有键,除了那些像tab或箭头键那样导致按钮在按下时失去焦点的键。我知道在捕获间隔期间我需要从按键事件中取消绑定窗口。
我已经尝试从框架,笔记本选项卡小部件和其中的面板解除绑定,但它没有工作。
在层次结构中我需要取消绑定按键以避免它们按照通常的方式运行? 感谢
答案 0 :(得分:1)
import wx
a = wx.App(redirect=False)
class XFrame(wx.Frame):
def __init__(self,*args):
wx.Frame.__init__(self,*args)
b = wx.Button(self,-1,"Click")
b.Bind(wx.EVT_BUTTON,self.OnButton)
def OnButton(self,evt):
self.SetFocus()
self.Bind(wx.EVT_CHAR,self.OnChar)
def OnChar(self,evt):
print evt.KeyCode
self.Unbind(wx.EVT_CHAR)
f = XFrame(None,-1,"A Frame")
f.Show()
a.MainLoop()
我想无论如何