我正在尝试在另一个功能正在运行时显示“正在下载...”弹出窗口,然后在完成该功能后关闭该弹出窗口。
谢谢
答案 0 :(得分:0)
创建一个Tk()窗口,并在其中放置进度条。
答案 1 :(得分:0)
import tkinter as t
from tkinter import ttk
root = t.Tk()
t.Label(root, text='Downloading...').pack()
pb = ttk.Progressbar(root, length=200, mode='indeterminate')
pb.pack()
pb.start()
root.update()
此代码将立即显示此窗口:
此外,这不会停止执行...如果您在下面编写更多代码,则python将继续执行您的程序; 但有一个警告:您在做其他事情时必须不时致电root.update()
,以允许tkinter更新窗口,否则您的窗口似乎会冻结并且窗口管理器会将窗口标记为“无响应”。
答案 2 :(得分:0)
您可以通过在StackOverflow中搜索[tkinter] pop-up window
来了解如何创建弹出窗口。完成后,这是一个通用的“下载”包装函数。
def downloading(parent, function, args, kwargs):
popup = <code or function call to create popup using parent)
ret = function(*args, **kwargs)
popup.destroy()
return ret
args
是一个元组或位置参数列表。 kwargs
是关键字名称和参数的键值字典。