我正在使用 wxPython。我有一个wx.Dialog
带有一堆按钮的,还有一个wx.TextCtrl
. 每个按钮都是一个wx.Button
带有绑定事件的按钮wx.EVT_BUTTON
。我按了几个按钮,他们就会做他们的事情。然后我想按空格键。有趣的是,我有一个标记为 SPC 的按钮,它对应于空格键的行为,以增加便利。我希望发生以下情况:
- 您按下空格键按钮,它会识别空格键事件(有效)
您按下键盘上的空格键,它会识别空格键事件
一种。您按下键盘上的空格键,重点放在
wx.TextCtrl
...(作品)湾。您按下键盘上的空格键并专注于 a
wx.Button
因为这是您处理的最后一个事件并且空格键事件被识别(问题)
我已经做好了:
self.typingWindow.Bind(wx.EVT_KEY_DOWN, self.popup)
self.Bind(wx.EVT_KEY_DOWN, self.popup)
第一行允许案例 2a 工作
第二行没有效果,但我认为应该?我看到了这个旧链接,它解决了完全相同的问题,它似乎说像我的第二个代码行这样的事情将允许案例 2b 工作。无论如何,在情况 2b 中发生的情况是为最后按下的按钮生成命令事件。这应该是 Windows 的默认行为。
所以我的问题是我的案例 2b 可以工作吗?也就是说,即使焦点当前位于按下的最后一个按钮上,我是否可以生成一个按键事件但不是来自最后按下的按钮的命令事件。