效果
代码解析
导入需要的模块
import tkinter as tk
from tkinter import ttk
定义进度条
def start_progress():
progress['value'] = 0
max_value = 100
step = 10
for i in range(0, max_value, step):
progress['value'] += step
root.update_idletasks()
root.after(500)
- progress[‘value’] = 0:初始化进度条的值为0。
- max_value = 100:设置进度条的最大值为100。
- step = 10:定义每次更新的步长为10。
- for i in range(0, max_value, step):通过一个循环,逐步增加进度条的值。
- progress[‘value’] += step:每次循环增加进度条的值。
- root.update_idletasks():更新UI,以确保进度条的变化立即反映出来。
- root.after(500):模拟处理时间,暂停500毫秒。
代码
import tkinter as tk
from tkinter import ttk
def start_progress():
progress['value'] = 0
max_value = 100
step = 10
for i in range(0, max_value, step):
progress['value'] += step
root.update_idletasks()
root.after(500)
root = tk.Tk()
root.title("进度条示例")
progress = ttk.Progressbar(root, orient="horizontal", length=300, mode="determinate")
progress.pack(pady=20)
start_button = tk.Button(root, text="开始", command=start_progress)
start_button.pack(pady=10)
root.mainloop()