Как сделать автоматически обновляемый прогрессбар с заданным процентом в поле Entry?

Как сделать автоматически обновляемый прогресс бар с заданным процентом в поле Entry.
Много всего перепробовал, ничего не получилось. Мне нужно сделать так, чтобы я вводил процент и его сразу после ввода цифры выводило в прогресс бар, без нажатия кнопок. Только текстовое поле и прогресс бар.

from tkinter import *
import tkinter.ttk as ttk

root = Tk()

def progres():
    pb['value'] = int(input.get())    

input = Entry(root, validate="key", validatecommand=(progres))
input.insert(0, 0)
input.pack()

pb = ttk.Progressbar(root, mode="determinate")
pb.pack()

B = ttk.Button(root, text ="Hello", command = progres)
B.pack()

root.mainloop()

Ответы (1 шт):

Автор решения: S. Nick

Попробуйте так:

from tkinter import *
import tkinter.ttk as ttk


root = Tk()
        
def validate(new_value): 
    pb['value'] = new_value if new_value else 0
    return new_value == "" or new_value.isnumeric()  

pb = ttk.Progressbar(root, mode="determinate")

vcmd = (root.register(validate), '%P')             
input = Entry(root, validate='key', validatecommand=vcmd)  

input.insert(0, 0)
input.pack()

pb.pack()

input.focus()

root.mainloop()

введите сюда описание изображения

→ Ссылка