我是Python新手,想知道如何在按下按鍵時將圖像更改爲另一個圖像。當我按下向下箭頭鍵時,我希望我的圖像從GuyUp.gif更改爲GuyDown.gif,因此看起來我的人實際上正常行走。我在Python代碼如下所示:如何在Python中按下特定的按鍵時更改圖像
from tkinter import *
tk = Tk()
tk.title("Triangle Movement")
tk.resizable(0, 0)
canvas = Canvas(tk, width=500, height=500)
canvas.pack()
tk.update()
guyup = PhotoImage(file = 'GuyUp.gif')
canvas.create_image(5, 5, image = guyup, anchor = NW)
def movetriangle(event):
if event.keysym == 'Up':
canvas.move(1, 0, -4)
elif event.keysym == 'Down':
canvas.move(1, 0, 4)
elif event.keysym == 'Left':
canvas.move(1, -4, 0)
elif event.keysym == 'Right':
canvas.move(1, 4, 0)
elif event.keysym == 'w':
canvas.move(2, 0, -4)
elif event.keysym == 's':
canvas.move(2, 0, 4)
elif event.keysym == 'a':
canvas.move(2, -4, 0)
else:
canvas.move(2, 4, 0)
canvas.bind_all('<KeyPress-Up>', movetriangle)
canvas.bind_all('<KeyPress-Down>', movetriangle)
canvas.bind_all('<KeyPress-Left>', movetriangle)
canvas.bind_all('<KeyPress-Right>', movetriangle)
canvas.bind_all('<KeyPress-w>', movetriangle)
canvas.bind_all('<KeyPress-s>', movetriangle)
canvas.bind_all('<KeyPress-a>', movetriangle)
canvas.bind_all('<KeyPress-d>', movetriangle)
我有兩個圖像,並希望把它放在我的elif語句的「打倒」 謝謝您的幫助鍵符!
由於您是Python的新手,灌輸評論:閱讀[PEP 8](http://www.python.org/dev/peps/pep-0008/)。在這種情況下,您的違規行爲是在關鍵字參數周圍放置空格;) – Felipe 2013-04-29 23:31:47