我是python新手。我试图在画布上实现一个简单的物体移动。
这个想法是简单地更新X,Y坐标并重新绘制椭圆。
每次更新坐标时,我都试图使用canvas.update()
,但它不是这样工作的。
class character():
x = 10
y = 10
color = "red"
canvas.create_oval(x, y, x + 40, y + 40, fill=color)
def moveup():
character.y -= 10
def moveright():
character.x += 10
def movedown():
character.y += 10
def moveleft():
character.x -= 10
def choose():
choosen_move = randint(0, 4)
if choosen_move == 0:
moveup()
elif choosen_move == 1:
moveright()
elif choosen_move == 2:
movedown()
elif choosen_move == 3:
moveleft()
print "%s | %s" % (character.x, character.y)
canvas.update()
sleep(1)
while True:
choose()
root.mainloop()
您需要使用
move
,而不是character.x += 10
或character.y -= 10
:其他的应该跟着。
与其说是
Character
类,不如说是oval = canvas.create_oval(x, y, x + 40, y + 40, fill=color)
。**请注意:这些代码都不起作用-它只是给你一些关于如何做事情的想法。:)
我把一些东西绑在键盘上,当按下按钮时,它们会在屏幕上移动。
不用循环,只需使用config和bind更改对象的x和y。。。当你按键盘上的左键时,将运行def来移动物体。(或事物)
绑定某物的示例:
x_变量=5 y_变量=9
**在此处将对象绑定到键盘:
如果你想的话,你可以一次搬动一堆东西。。。(尽管你必须自己编写代码,哈哈)
物品清单=[树,灌木,蜗牛]
相关问题 更多 >
编程相关推荐