0

如何让我的 Tkinter GUI 等待 BooleanVar() 的更改?BooleanVar 由距离传感器控制。GUI 应该等到变量变为 False 后再继续。

我尝试使用 while True - 循环,但正如预期的那样,它扰乱了主循环并且程序崩溃了。我也考虑过使用一种等待用户输入的方法,但我不知道如何。

有没有办法解决这个问题?

谢谢!

4

1 回答 1

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()
于 2013-10-10T10:53:24.497 回答