Computer >> Hướng Dẫn Máy Tính >  >> Lập Trình >> Python

Cách tạo thanh tiến trình tải xuống (download progress bar) trong Tkinter?

Giả sử chúng ta đang tạo ứng dụng tương tác với nguồn và tệp như tải xuống tệp, theo dõi tệp. Để tạo thanh tiến trình cho ứng dụng như vậy, chúng ta sẽ dùng gói tkinter.ttk bao gồm module Progressbar.

Ban đầu, chúng ta sẽ khởi tạo đối tượng Progressbar có hướng Horizontal. Sau đó, chúng ta sẽ định nghĩa hàm tăng giá trị của thanh tiến trình và liên tục cập nhật nó.

Ví dụ

Trong ví dụ sau, chúng ta đã tạo thanh tiến trình tải xuống bằng cách cập nhật giá trị của nó.

# Import thư viện cần thiết
from tkinter import *
from tkinter.ttk import *
import time
# Tạo instance của khung tkinter
win = Tk()
# Đặt hình học của khung
win.geometry("620x400")
# Định nghĩa hàm
def start():
    task = 10
    x = 0
    while x < task:
        time.sleep(1)
        bar['value'] += 10
        x += 1
        win.update_idletasks()
bar = Progressbar(win, orient=HORIZONTAL, length=300)
bar.pack(pady=20)
# Tạo nút bấm
Button(win, text="Tải xuống", command=start).pack(pady=20)
win.mainloop()

Kết quả

Chạy mã sẽ hiển thị thanh tiến trình và khi chúng ta nhấn nút "Tải xuống", nó sẽ tự động hoàn thành.

Cách tạo thanh tiến trình tải xuống (download progress bar) trong Tkinter?