Прежде всего, я начинающий с python / tkinter. Что я пытаюсь сделать: я делаю небольшую панель инструментов, я поместил векторную графику c (png) как холст, поэтому мне не нужно все делать программированием.
import tkinter as tk
root = tk.Tk()
canvas = tk.Canvas(root, width=1900, height=950, borderwidth=0, highlightthickness=0, bg="white")
canvas.pack()
photo = tk.PhotoImage(file='dashboard.png')
root.photo = photo
canvas.create_image(950,480,image=photo)
baterrytop=143
powertop=300
procentop = 100
def key(event):
global baterrytop
global procentop
if event.char == event.keysym:
if event.char == "w":
if baterrytop > 143:
baterrytop -= 1
procentop += 0.0018
ctverec = canvas.create_rectangle(1574,688,1732,baterrytop,fill="green2", width=0)
procento = canvas.create_text(1653,420,text=procentop,font = "Arial 12")
if event.char == "s":
if baterrytop < 688:
baterrytop +=1
procentop -=0.0018
ctverec1 = canvas.create_rectangle(1574,143,1732,baterrytop,fill="#e9afaf", width=0)
procento = canvas.create_text(1653,420,text=procentop,font = "Arial 12")
#label1.config(text=msg)
root.bind_all('<Key>', key)
Обычно, если я нажимаю 'w' или 's', прямоугольник должен увеличиваться или уменьшаться, проблема в том, что каждый раз, когда я нажимаю клавишу (или удерживаю ее), я создаю новую: ctverec = canvas.create_rectangle(1574,688,1732,baterrytop,fill="green2", width=0)
Не думаю, что это отличная идея. Поэтому я попытался выяснить, как просто настроить уже сделанный прямоугольник, и я не смог найти ничего работающего. Есть ли способ, как это сделать?
Спасибо