事件绑定不适用于箭头键 Pycharm
Event Bindings not working with arrow keys Pycharm
我正在尝试使用事件绑定为这个三角形制作一些基本动画(我对编码有点陌生),如果我按下箭头键,三角形将朝那个方向移动,如果我按下回车键它会向右移动。
当我尝试 运行 代码时,'enter' 键移动三角形,但箭头键不移动。我从我正在为 python 阅读的书中抄录下来。有谁知道我的代码有什么问题吗?
(编辑:对不起,我输入了错误的代码)
from tkinter import*
tk = Tk()
canvas = Canvas(tk, width=400, height=400)
canvas.pack()
canvas.create_polygon(10, 10, 10, 60, 50, 35)
def movetriangle(event):
if event.keysym == 'Up':
canvas.move(1, 0, -3)
elif event.keysym == 'Down':
canvas.move(1, 0, 3)
elif event.keysym == 'Left':
canvas.move(1, -3, 0)
else:
canvas.move(1, 3, 0)
canvas.bind_all('<KeyPress-Return>', movetriangle)
tk.mainloop()
我想要箭头键为三角形设置动画,但我的代码似乎有错误。
有人可以帮忙吗?
谢谢。
绑定到底部的键而不是同时添加
elif event.keysym == 'Down'
和其他箭头键或其他字符(如果需要)。
我正在尝试使用事件绑定为这个三角形制作一些基本动画(我对编码有点陌生),如果我按下箭头键,三角形将朝那个方向移动,如果我按下回车键它会向右移动。
当我尝试 运行 代码时,'enter' 键移动三角形,但箭头键不移动。我从我正在为 python 阅读的书中抄录下来。有谁知道我的代码有什么问题吗?
(编辑:对不起,我输入了错误的代码)
from tkinter import*
tk = Tk()
canvas = Canvas(tk, width=400, height=400)
canvas.pack()
canvas.create_polygon(10, 10, 10, 60, 50, 35)
def movetriangle(event):
if event.keysym == 'Up':
canvas.move(1, 0, -3)
elif event.keysym == 'Down':
canvas.move(1, 0, 3)
elif event.keysym == 'Left':
canvas.move(1, -3, 0)
else:
canvas.move(1, 3, 0)
canvas.bind_all('<KeyPress-Return>', movetriangle)
tk.mainloop()
我想要箭头键为三角形设置动画,但我的代码似乎有错误。
有人可以帮忙吗?
谢谢。
绑定到底部的键而不是同时添加
elif event.keysym == 'Down'
和其他箭头键或其他字符(如果需要)。