Почему этот индикатор выполнения Tkinter не отвечает? - PullRequest
0 голосов
/ 17 марта 2020

Я пытаюсь следовать этому Python учебнику о том, как использовать индикаторы выполнения в Tkinter, и это был код:

# importing tkinter module 
from tkinter import *
from tkinter.ttk import *

# creating tkinter window 
root = Tk() 
# Progress bar widget 
progress = Progressbar(root, orient = HORIZONTAL, 
              length = 100, mode = 'determinate') 

# Function responsible for the updation 
# of the progress bar value 
def bar(): 
    import time
    for i in range(0, 101, 20):
        progress['value'] = i
        root.update_idletasks() 
        time.sleep(1)  
progress.pack(pady = 10)  
# This button will initialize 
# the progress bar 
Button(root, text = 'Start', command = bar).pack(pady = 10) 

# infinite loop 
root.mainloop()

Мой результат: я нажимаю кнопку запуска, и она вращается курсор в течение 5 секунд, затем показывает индикатор выполнения, внезапно полностью заполненный. У меня там есть update_idletasks(), но по какой-то причине это не работает.

Я запускаю это на Ма c Высокая Сьерра.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...