菜鸟IT的博客 >> Python
tkinter 程序运行的时候有个过渡提示 | 运行还没结束有个加载动画。| tkinter显示loading 加载提示 | 代码简化
# ●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●
# 弹窗过渡阶段程序进度提示代码块 —————— 开始↓
Toplevel_Win_Loading=tkinter.Toplevel(Windows_ZT_Manager)
Toplevel_Win_Loading.resizable(width=False, height=False)
# 定义窗口自身宽度
Toplevel_Win_Loading_Width = 666
# 定义窗口自身高度
Toplevel_Win_Loading_Height = 25
# 计算水平方向的起点位置坐标
x1 = Toplevel_Win_Loading.winfo_screenwidth() / 2 - 666 / 2 + 8
# 计算垂直方向的起点位置坐标
y1 = Toplevel_Win_Loading.winfo_screenheight() / 2 - 25 / 2
# 布局登录窗口的显示位置
Toplevel_Win_Loading.geometry("%dx%d+%d+%d" % (Toplevel_Win_Loading_Width, Toplevel_Win_Loading_Height, x1, y1))
# ————————————————
# 布局1个Text多行文本框
Text_Loading = tkinter.Text(Toplevel_Win_Loading, fg="#FFF", bg="#333", padx=3, pady=5)
Text_Loading.pack(fill=tkinter.BOTH)
# ————————————————
# 开始文本框插入提示
Text_Loading.config(state="normal") # 插入文字后,Text文本框处于禁止编辑状态。
Text_Loading.delete(0.0, tkinter.END) # 每次插入前先清空
Text_Loading.insert(tkinter.END, "* 提示:" + "开始加载账单数据...") # 正式插入文字
Text_Loading.config(state="disabled") # 插入文字后,Text文本框处于禁止编辑状态。
# 弹窗过渡阶段程序进度提示代码块—————— 结束↑
# ●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●
★放程序运行的代码★
# ●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●
# 摧毁顶层窗口,结束程序运行提示
Toplevel_Win_Loading.destroy()
# ●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●
注意:整段代码放在1个子线程的方法函数里,这样可以防止主程序UI界面出现“不响应卡死”的情况。
代码简化↓【】【】【】【】【】【】【】【】【】
把上面代码的toplevel顶层的窗口名称设置代码之后的代码全部做成1个类
然后代码如下,就简单多了。。。。。。。。。。
# ●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●
# 弹窗过渡阶段程序进度提示代码块 —————— 开始↓
Toplevel_Win_Loading=tkinter.Toplevel(Windows_ZT_Manager)
C19_Class_Loading_Waiting.Loading_Waiting().Loading_Words_2(Windows_Loading=Toplevel_Win_Loading,InsertWords="正在加载全部账单数据...")
# 弹窗过渡阶段程序进度提示代码块—————— 结束↑
# ●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●
★放程序运行的代码★
# ◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆
# 摧毁顶层窗口,结束程序运行提示
Toplevel_Win_Loading.destroy()
# ◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆
菜鸟IT博客[2022.04.16-13:29] 访问:333