如果我想在一个循环里同时显示两个独立的进度条,应该怎么做?
时间: 2024-09-09 18:02:57 浏览: 24
如果你想在一个循环中同时显示两个独立的进度条,你可以利用GUI库如Python的Tkinter或者Java的Swing来实现。这里我会给出一个简单的Python Tkinter示例:
```python
import tkinter as tk
from tkinter import ttk
def update_progress_bar(i):
progress1_value.set(int((i / total_steps) * 100))
progress2_value.set(int(((i + 5) / (total_steps + 10)) * 100))
root = tk.Tk()
frame = ttk.Frame(root)
frame.pack(pady=10)
total_steps = 100
progress1 = ttk.Progressbar(frame, orient="horizontal", length=200, mode="determinate")
progress1.grid(row=0, column=0, padx=10)
progress1_value = tk.IntVar()
progress1['value'] = 0
progress1.config(variable=progress1_value)
progress2 = ttk.Progressbar(frame, orient="horizontal", length=200, mode="determinate")
progress2.grid(row=0, column=1, padx=10)
progress2_value = tk.IntVar()
progress2['value'] = 0
progress2.config(variable=progress2_value)
for i in range(total_steps):
update_progress_bar(i)
root.update_idletasks() # 每次更新后都需要刷新界面
root.update()
root.mainloop()
```
在这个例子中,我们创建了两个水平进度条,并在循环内部递增它们的值。`update_progress_bar`函数负责调整每个进度条的当前值。`root.update_idletasks()` 和 `root.update()` 是为了保持界面同步更新。