使用键盘移动图像

时间:2017-04-27 15:37:56

标签: python tkinter

我试图编写一个可以使用tkinter库移动图像的函数。

除了pygame之外是否有库,以便我可以使用键盘移动图像?

1 个答案:

答案 0 :(得分:1)

您可以将图像放在画布上并使用画布的move方法移动它。

这是一个人为的例子

import tkinter as tk

IMAGE_DATA = '''
    R0lGODlhEAAQALMAAAAAAP//AP///wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
    AAAAAAAAAAAA\nAAAAACH5BAEAAAIALAAAAAAQABAAQAQ3UMgpAKC4hm13uJnWgR
    TgceZJllw4pd2Xpagq0WfeYrD7\n2i5Yb+aJyVhFHAmnazE/z4tlSq0KIgA7\n
'''

def move_left(event):
    event.widget.move(image_id, -1, 0)

def move_right(event):
    event.widget.move(image_id, 1, 0)

root = tk.Tk()
canvas = tk.Canvas(root, width=200, height=200)
canvas.pack(fill="both", expand=True)

image = tk.PhotoImage(data=IMAGE_DATA)
image_id = canvas.create_image(100, 100, anchor="center", image=image)

canvas.bind("<Left>", move_left)
canvas.bind("<Right>", move_right)

canvas.focus_set()

root.mainloop()