python-3.x 如何让乌龟跟着老鼠

f8rj6qna  于 2023-11-20  发布在  Python
关注(0)|答案(1)|浏览(117)

我被分配在python中创建一个类似的slither.io版本。我计划使用Turtle。我如何让turtle跟随我的鼠标,而不必每次单击?这是我在单击时的方法,但我宁愿不必单击:

from turtle import *
turtle = Turtle()
screen = Screen()
screen.onscreenclick(turtle.goto)
turtle.getscreen()._root.mainloop()

字符串

8mmmxcuj

8mmmxcuj1#

它的关键是在turtle上使用ondrag()事件处理程序。一个简短而不那么甜蜜的解决方案:

import turtle
turtle.ondrag(turtle.goto)
turtle.mainloop()

字符串
这可能会在你开始拖动后不久崩溃。一个更好的解决方案是拖动一个更大的海龟,并关闭拖动处理器内的拖动处理程序,以防止事件堆积:

from turtle import Turtle, Screen

def dragging(x, y):
    yertle.ondrag(None)
    yertle.setheading(yertle.towards(x, y))
    yertle.goto(x, y)
    yertle.ondrag(dragging)

screen = Screen()

yertle = Turtle('turtle')
yertle.speed('fastest')

yertle.ondrag(dragging)

screen.mainloop()


请注意,你必须点击并拖动乌龟本身,而不仅仅是点击屏幕上的某个地方。如果你想让乌龟跟随鼠标而不按住左键,请参阅my answer to Move python turtle with mouse pointer

相关问题