Как сделать Progressbar в окне на холсте Canvas?

Мне нужно показывать очки при каждом клике на кнопку.
Как сделать Progressbar в окне на холсте Canvas?

canvas.pack()


clicks = 0



def click():
    global clicks
    
    clicks += 2
    canvas.delete("all")
    
    canvas.create_text(250, 10, text = clicks, font=('Arial Black', 10, 'bold'), fill = "#4587de")
    canvas.pack()
    

b1 = PhotoImage(file=здесь мой файл)
Button(root, image=b1, bd=0, command=click, height=100, width=100).place(x=220,y=85)

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

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

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

from tkinter import *
from tkinter import ttk


class Root(Tk):
    def __init__(self):
        super().__init__()
        
        self.i = 0
        
        self.canvas = Canvas()
        self.canvas.place(relx=0,rely=0)
        
        self.button = Button(self, text="Click me", command=self.animation)
        self.button.pack()

        self.label=Label(text="Вы еще не нажимали кнопкую")
        self.label.place(relx=0.5, rely=0.85, anchor='c')

        self.pb = ttk.Progressbar(orient='horizontal', mode="determinate", length=480)  
        self.pb.place(relx=0.5, rely=0.9,anchor='c')        
        self.pb["value"] = 0
        
    def animation(self):
        self.i += 1
        if self.i > 100:
            self.label["text"] = f'Вы нажали кнопку 100 раз. Это все.'
            return
        
        self.pb["value"] = self.i
        self.label["text"] = f'Вы нажали кнопку {self.i} раз.'
        

root = Root()
root.geometry("500x400+500+200")
root.mainloop()

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

→ Ссылка