Я нашел элегантный способ, на тот случай, если кто-то все еще ищет.
Метод .start () на ttk.Progressbar может принимать аргумент для указания интервала в миллисекундах.
.start ([интервал])
Начинайте перемещать индикатор каждые интервалы в миллисекундах; по умолчанию 50 мс. Каждый раз индикатор перемещается так, как если бы вы вызывали метод .step ().
Вот пример кода, чтобы попробовать его самостоятельно:
import tkinter as tk
from tkinter import ttk
root = tk.Tk()
p10 = ttk.Progressbar(root, mode='indeterminate', length=200)
p10.pack()
p10.start(10)
p100 = ttk.Progressbar(root, mode='indeterminate', length=200)
p100.pack()
p100.start(100)
p1000 = ttk.Progressbar(root, mode='indeterminate', length=200)
p1000.pack()
p1000.start(1000)
root.mainloop()