如何让我的Tkinter GUI等待更改BooleanVar()? BooleanVar由距离传感器控制。 GUI应该等到变量变为False并继续移动。
我试图使用一段时间的True循环,但正如预期的那样,它扰乱了主循环并且程序崩溃了。 我也考虑过使用一个方法来等待用户输入,但我无法弄清楚如何。
有什么方法可以解决这个问题吗?
谢谢!
答案 0 :(得分:1)
我不明白你的意思"等等"这里,因为GUI始终处于"等待"的恒定状态。它等待事件,然后它对事件起作用。
如果您以某种方式设置了BooleanVar
,则可以在该变量上设置跟踪。当值更改时,跟踪将调用您选择的回调。在该回调中,您的代码可以执行您想要的任何操作。
self.sensor = tk.BooleanVar()
self.sensor.trace("w", self.on_sensor_change)
...
def on_sensor_change(self, *args):
print "the sensor changed:", self.sensor.get()