Python 我如何修复“ValueError:callback必须是可调用的,Get None”的时间表Kivy.clock回调函数?
我有一个使用plyer.facades.Wifi库检查Wifi状态的功能。该函数将布尔属性变量is_wifi更改为True或False,具体取决于wifi的状态。BooleanProperty变量在Kv语言脚本中绑定到ActionLabel,ActionLabel根据状态更改图像。 然后使用Kivy的Clock.schedule\u interval对功能进行调度 问题 主要的问题是我得到了一个ValueError:callback必须是可调用的,而当我计划函数回调时却没有得到任何 我试过: 1] 在初始化时安排功能。 2] 在用户登录时初始化后调用调度事件 调用的导入和函数的代码示例 Kivy语言示例,显示ActionLabel上的绑定 预期结果 我希望函数能够安排回调,而不会出现错误Python 我如何修复“ValueError:callback必须是可调用的,Get None”的时间表Kivy.clock回调函数?,python,python-3.x,kivy,kivy-language,Python,Python 3.x,Kivy,Kivy Language,我有一个使用plyer.facades.Wifi库检查Wifi状态的功能。该函数将布尔属性变量is_wifi更改为True或False,具体取决于wifi的状态。BooleanProperty变量在Kv语言脚本中绑定到ActionLabel,ActionLabel根据状态更改图像。 然后使用Kivy的Clock.schedule\u interval对功能进行调度 问题 主要的问题是我得到了一个ValueError:callback必须是可调用的,而当我计划函数回调时却没有得到任何 我试过: 1
Clock.schedule_interval(rt.wifi_is_enabled(), 0.5)
此代码相当于:
callback = rt.wifi_is_enabled()
Clock.schedule_interval(callback, 0.5)
你现在看到问题了吗?callback的值为None,这是您尝试调度的值
您需要调度函数本身,而不是其返回值:
Clock.schedule_interval(rt.wifi_is_enabled, 0.5)
请注意,函数将自动接收一个位置参数,其中包含自上次运行/计划以来的时间。您的函数将需要接受此参数,即使忽略它
此代码相当于:
callback = rt.wifi_is_enabled()
Clock.schedule_interval(callback, 0.5)
你现在看到问题了吗?callback的值为None,这是您尝试调度的值
您需要调度函数本身,而不是其返回值:
Clock.schedule_interval(rt.wifi_is_enabled, 0.5)
请注意,函数将自动接收一个位置参数,其中包含自上次运行/计划以来的时间。您的函数需要接受此参数,即使它忽略它。非常感谢,这就解决了它。我删除了括号,将根类添加到super,并为函数提供了第二个参数*args。现在它开始工作并计划函数回调。我一直在学习Python语言的新的错综复杂的细微差别。再次感谢!我几乎犯了同样的错误,在谷歌上找到了这个搜索引擎,并在不到一分钟的时间里解决了它。谢谢你,这就解决了。我删除了括号,将根类添加到super,并为函数提供了第二个参数*args。现在它开始工作并计划函数回调。我一直在学习Python语言的新的错综复杂的细微差别。再次感谢!我几乎犯了同样的错误,在谷歌上找到了这个搜索引擎,并在不到一分钟的时间里解决了它。谢谢