用Tkinter移动图像

时间:2018-12-19 14:56:26

标签: python image tkinter

我不知道该怎么做才能移动对象(图片)。这是我到目前为止的内容:

类中的第一种方法:

self.player1 = tkinter.PhotoImage(file="player1.png")

第二种方法:

# this puts this image in a square grid
self.player1_x = j*50
self.player1_y = i*50
self.canvas.create_image(self.player1_x, self.player1_y, anchor=NW, image=self.player1)

类中的第三个方法(单击特定按钮将调用此方法):

self.player1_x = self.player1_x
self.player1_y -= 50
self.canvas.move(self.player1, self.player1_x, self.player1_y)

当我这样写时,什么也没有发生,图像也没有动。你能帮我吗?谢谢。

1 个答案:

答案 0 :(得分:0)

self.player1当前未设置为画布上的图像,而是图像文件本身。要获得所需的行为,您应该执行以下操作:

self.player1_image = tkinter.PhotoImage(file="player1.png")

# Create the player1 object
self.player1 = self.canvas.create_image(self.player1_x, self.player1_y, anchor=NW, image=self.player1_image)

# Move the player1 object. Move takes 3 arguments, the object to move and the x and y to move by, not the coordinates to move to.
self.canvas.move(self.player1, 0, -50)