【发布时间】:2014-11-10 04:54:19
【问题描述】:
所以我有一个红色方块,你可以用箭头键四处移动,我在画布的左上角有另外 3 个方块。它们是红色、绿色和蓝色。如果您在其中一个方格内单击,我希望它将可移动方格变为单击方格的颜色。我不确定如何去做,任何帮助都将不胜感激,这是我到目前为止的代码。
from tkinter import*
def onKeyDown(event):
if(event.keysym == "Up"):
canvas.move(rect, 0, -2)
if(event.keysym == "Down"):
canvas.move(rect, 0, 2)
if(event.keysym == "Left"):
canvas.move(rect, -2, 0)
if(event.keysym == "Right"):
canvas.move(rect, 2, 0)
def onMouseDown(event):
canvas.itemconfigure(rect, fill="green");
master = Tk()
canvas = Canvas(master, width=600, height=600)
canvas.pack()
rect = canvas.create_rectangle(250,250,350,350, fill="red")
canvas.update()
rrect = canvas.create_rectangle(0,0,30,30, fill="red")
grect = canvas.create_rectangle(33,0,60,30, fill="green")
brect = canvas.create_rectangle(63,0,90,30, fill="blue")
master.bind("<Key>", onKeyDown)
master.bind("<Button-1>", onMouseDown)
编辑* 我现在走在正确的轨道上,我刚刚发现 onMouseDown(event) 仍然对如何使其工作感到有些困惑,尽管通过单击每个方块来更改颜色。
【问题讨论】:
标签: python animation canvas tkinter