概述
我正在为一个项目做一个图形用户界面,我的主管要求我包括一个进度条,因为程序的每次迭代可能需要7分钟。在
我希望进度条在一个单独的窗口中弹出,并在进程完成后关闭,但根据我目前的理解,要么我必须手动关闭弹出窗口,要么整个GUI立即关闭。在
这是我使用的代码的简化版本import Tkinter as tk
from ttk import Progressbar
from os import listdir
import threading
import time
root = tk.Tk()
root.title("TCC Image Processing")
def create_tcc(input_bar, input_progress_dialog):
input_bar['maximum'] = 5
input_bar['value'] = 0
for x in range(5):
time.sleep(1)
input_bar['value'] += 1
# this line is where the touble seems to be
input_progress_dialog.destroy()
def run_tcc():
progress_dialog = tk.Toplevel()
progress_dialog.title("TCC Processing")
bar = Progressbar(progress_dialog, orient="horizontal", length=500, value=0, mode="determinate")
bar.grid(row=4, columnspan=2)
t = threading.Thread(target=create_tcc, args=(bar, progress_dialog))
t.start()
tcc_run_button = tk.Button(root, text="RUN", command=lambda:run_tcc())
tcc_run_button.pack()
root.mainloop()
如果可能的话,我希望避免下载没有直接python的额外模块。在
最后
以上就是傲娇纸飞机为你收集整理的python自动关闭弹窗_自动关闭Tkinter弹出窗口而不关闭主风的全部内容,希望文章能够帮你解决python自动关闭弹窗_自动关闭Tkinter弹出窗口而不关闭主风所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
发表评论 取消回复