【问题标题】:Assigning priorities to wxPython events为 wxPython 事件分配优先级
【发布时间】:2012-08-21 12:37:21
【问题描述】:

是否可以为特定的 wxPython 事件分配优先级?

在启动我的 GUI 后,我会定期使用计时器调用方法。但是我希望用户一按下按钮就能够摆脱这种方法。如果没有工作线程,这可能吗?

【问题讨论】:

  • 我怀疑如果没有单独的线程这是可能的。键盘事件可能在 wx 的主循环中的某个时间点进行处理,这意味着您需要将程序控制返回到主循环(从您的函数)以处理您的事件。
  • wx.Yield() 怎么样。我不确定它的作用,但它似乎将控制权返回给主循环。
  • 我对@9​​87654322@ 还不够熟悉,不能说。我知道在Tkinter 中,您可以执行widget.update_idletasks() 之类的操作。但这不会立即得到键盘事件——当你的程序到达update_idletasks()时得到它。
  • 根据bytes.com/topic/python/answers/…wx.Yield()等价于tkinter.update_idletasks()

标签: python wxpython wxwidgets


【解决方案1】:

我不知道。事件按接收顺序添加到事件队列中。您可能可以使用进程在线程中运行的线程执行此操作,然后将其杀死。不过,您可以尝试在 wxPython 邮件列表上询问其他想法。那里有几个核心开发人员,他们可能会为您提供一些见解。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2015-05-13
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-11-25
    • 1970-01-01
    相关资源
    最近更新 更多