Python 我的Tkinter GUI太。。。静止的

Python 我的Tkinter GUI太。。。静止的,python,tkinter,Python,Tkinter,我使用Tkinter GUI启动一个测量和分析过程,基本上只需点击一个按钮就可以进行。由于这些测量可能需要一段时间,我尝试包括一个进度条,即: 但是当我启动这个过程时,我的整个Tkinter窗口变成了废话,直到测量完成,它有点重新加载自己,我的进度条设置得太100%。这不是我想发生的事 那里发生了什么事?我对整个编程都很陌生,所以我想我没有所有的工具。我是否需要引入一个单独的线程或类似的东西,以便测量和tkinter主循环(就是这样吗?)同时运行?如果是这样,我该怎么做呢?每次更新进度条时调用

我使用Tkinter GUI启动一个测量和分析过程,基本上只需点击一个按钮就可以进行。由于这些测量可能需要一段时间,我尝试包括一个进度条,即:

但是当我启动这个过程时,我的整个Tkinter窗口变成了废话,直到测量完成,它有点重新加载自己,我的进度条设置得太100%。这不是我想发生的事

那里发生了什么事?我对整个编程都很陌生,所以我想我没有所有的工具。我是否需要引入一个单独的线程或类似的东西,以便测量和tkinter主循环(就是这样吗?)同时运行?如果是这样,我该怎么做呢?

每次更新进度条时调用
widget.update()
/
root\u window.update()
,制作一个进度条(这些是我处理67MB文件的代码片段)

然后在分析过程中:

def analysisfunction():
    progress.step(1) 
    ##do some analysis
    root.after(0, analysisFunction)

    if job == complete:
        stop
就像我说的,这将适用于我的67MB文件和tkinter。 希望这有点帮助:)

调用更新是危险的(虽然不太危险,但可能会导致意外的副作用)。根据经验,如果你不知道为什么它是dngerous,你就不应该称它为dngerous。通常,
update\u idletasks
是更好的选择。
def analysisfunction():
    progress.step(1) 
    ##do some analysis
    root.after(0, analysisFunction)

    if job == complete:
        stop