【问题标题】:python Tkinter, threading, and loopspython Tkinter、线程和循环
【发布时间】:2013-09-26 05:55:21
【问题描述】:

完全披露,这是来自 Reddit 的交叉帖子。

Code here.

我有一个我处理过的脚本,它使用 tkinter 弹出一些框以从用户那里收集一些信息。此信息用于启动外部应用程序,完成后会生成我感兴趣的日志文件。或者,我提供了一个按钮,用户可以按下该按钮来手动生成该日志文件。这些(外部应用程序 & 和 GUI 按钮)作为两个单独的线程启动,主程序监视等待两者中的任何一个提供所需的日志。当日志出现并且我有我需要的东西时,我会关闭最近打开的任何东西(这不是一种理想的做事方式,但在这种环境下工作正常)。

我的问题是我可以毫无问题地运行一次,但如果我尝试循环它,它会指向我的线程中断按钮(这实际上不是第一次使用 tkinter脚本)和块 - 可能是因为我第一次不优雅地关闭了 Tk()?

我尝试以多种不同的方式重新排列这些步骤,但没有成功。有没有人指点一下?

此处发布了一个非常简化的脚本版本,用于演示我的问题:http://pastebin.com/wSFA2DKM Windows 7 64 位,Python 2.7.5 32 位

【问题讨论】:

    标签: python multithreading python-2.7 tkinter python-multithreading


    【解决方案1】:

    每次您想关闭窗口时尝试使用self.master.destroy()

    如果这仍然不起作用,请考虑将所有条目放在一个面板上,并在具有中断按钮的面板底部以及提交/其他按钮。总有办法的!

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2022-07-07
      • 2021-03-24
      • 2013-12-25
      • 1970-01-01
      相关资源
      最近更新 更多