我正在做一个使用树莓皮3和7英寸触摸屏显示屏的门铃项目。我正在使用kivy来驱动GUI,但是遇到了以下我似乎无法解决的问题。在
kivy应用程序通过按键加载,并为用户提供认证选项(如rfid、键盘等),用户选择一个选项后会进入另一个屏幕,告诉他们在键盘选项的情况下输入自己的pin。在
以下是小键盘屏幕的片段:
class KeypadScreen(Screen):
keypadTextTest = StringProperty("Please Input 4 Digit Passcode")
def Decision(self, *args):
keypadOutput = FourDigitCodeCheck()
if keypadOutput == True:
self.change_text()
Clock.schedule_interval(self.change_text, 0.1)
self.change_text()
doorOpen()
return
def change_text(self, *args):
self.keypadTextTest = "Door Open"
当用户输入他们的pin码,代码返回True(即正确的pin码)时,我希望标签更改为“Door Open”(门打开),然后运行doorOpen(门打开)功能(见下图),该功能目前只打开和关闭LED。在
^{pr2}$然而,目前在标签改变之前调用doorOpen函数,这意味着LED打开,5秒后关闭,然后标签改变。在
我尝试过各种不同的方法来更新标签文本,甚至还尝试在之后添加不同的更改,以尝试在doorOpen函数运行之前强制进行更新,但是没有效果。在
今天下午很无聊,任何意见都将不胜感激。下面是小键盘屏幕的kivy lang代码片段,其中包含有错误:
^{3}$完整python脚本的Pastebin:https://pastebin.com/K2CnnmVB
完整Kivy脚本的Pastebin:https://pastebin.com/9mgZFxyx
目前没有回答
相关问题 更多 >
编程相关推荐