【发布时间】:2012-08-21 12:37:21
【问题描述】:
是否可以为特定的 wxPython 事件分配优先级?
在启动我的 GUI 后,我会定期使用计时器调用方法。但是我希望用户一按下按钮就能够摆脱这种方法。如果没有工作线程,这可能吗?
【问题讨论】:
-
我怀疑如果没有单独的线程这是可能的。键盘事件可能在 wx 的主循环中的某个时间点进行处理,这意味着您需要将程序控制返回到主循环(从您的函数)以处理您的事件。
-
wx.Yield() 怎么样。我不确定它的作用,但它似乎将控制权返回给主循环。
-
我对@987654322@ 还不够熟悉,不能说。我知道在
Tkinter中,您可以执行widget.update_idletasks()之类的操作。但这不会立即得到键盘事件——当你的程序到达update_idletasks()时得到它。 -
根据bytes.com/topic/python/answers/…,
wx.Yield()等价于tkinter.update_idletasks()。