【发布时间】:2023-08-18 12:00:01
【问题描述】:
我正在尝试在 python 中实现 Simon Says 的家庭作业。我正在尝试使用海龟库(要求)来做到这一点。
但是,我遇到了一个绊脚石,虽然我可以让屏幕注册点击事件(目前只是打印 x,y 坐标),但我无法让它等待点击事件。
具体来说,我打算在屏幕上设置一些区域,当他们在该位置单击时,就好像他们单击了按钮一样。屏幕清除和游戏做任何事情。
然而,在尝试获得一个工作“按钮”的实验中,它所做的只是设置它以便打印 x、y 坐标,但程序的其余部分完成。没有等待用户点击任何东西。我尝试了一种阻塞方法...
while clicked == False:
pass
或
while clicked == False:
time.sleep(1)
但这两种方法都会挂起程序,直到我手动中断,然后它会打印点击次数。
我是否在某处遗漏了一个选项?
【问题讨论】:
-
你没有检查按钮按下吗?
-
据我所知,Turtle 没有按钮。我试图模仿这种效果。如果有乌龟按钮,我很想知道。
-
我从来没有用过海龟,但是有一个方法
turtle.onrelease(fun, btn=1, add=None)我很确定如果你用这个你可以做一个按钮,只需检查x,y坐标? -
那调用附加函数是的。但程序不会等待。假设我有 2 个按钮。程序希望我推动其中一个。我会执行 'turtle.onrelease'、'turtle.onclick' 或任何它会调用该函数的方法,但由于预期的变量为空,因此程序已经崩溃,因为它将它设置为使用该函数然后继续。跨度>
-
啊,这是线程问题吗?对不起,如果我解释错了
标签: python button turtle-graphics