Python 捕捉输入按下的事件

Python 捕捉输入按下的事件,python,wxpython,keyevent,Python,Wxpython,Keyevent,我对python中的按键事件有问题。我有一个文本字段,我想做的是当该文本字段有焦点时,用户按下enter按钮来更改默认行为(这将焦点带到下一个小部件)并调用一些函数。 以下是我所做的: self.password\u input.Bind(wx.EVT\u KEY\u DOWN,self.onKeyDown) 但这不起作用。奇怪的是,当我把任何其他键而不是WXK_返回时,它会起作用。例如,如果我将if e.GetKeyCode()==wx.WXK_空格:它会工作,当空格被按下时,它会调用logi

我对python中的按键事件有问题。我有一个文本字段,我想做的是当该文本字段有焦点时,用户按下enter按钮来更改默认行为(这将焦点带到下一个小部件)并调用一些函数。 以下是我所做的:

self.password\u input.Bind(wx.EVT\u KEY\u DOWN,self.onKeyDown)

但这不起作用。奇怪的是,当我把任何其他键而不是WXK_返回时,它会起作用。例如,如果我将if e.GetKeyCode()==wx.WXK_空格:它会工作,当空格被按下时,它会调用login()函数…似乎只有输入它才工作。有人知道为什么吗?

打开:

窗口样式

wxTE_PROCESS_ENTER控件将生成事件wxEVT_COMMAND_TEXT_ENTER(否则,按ENTER键由控件内部处理或用于对话框控件之间的导航)

def onKeyDown(self, e):
    print e.GetKeyCode
    if e.GetKeyCode() == wx.WXK_RETURN:
        self.login()
    else:
        e.Skip()