【发布时间】:2020-09-10 08:35:22
【问题描述】:
我一直在使用 kivy 编写代码。在这里,我试图在“EighthWindow”中获取用户的输入,并尝试在“SecondWindow”中获取该变量作为标签。我的方法是将 UN 定义为类变量,然后在输入用户名时通过调用该函数进行更新。然后我在第二个类中获取UN的更新值并将其插入。但是UN没有得到更新。
我对 kivy 以及类和对象的整体概念也很陌生。感谢任何形式的建设性批评和帮助。以下是缩短的代码:
Python 文件
class EighthWindow(Screen):
username= ObjectProperty(None)
password= ObjectProperty(None)
UN=""
def change_var(self):
EighthWindow.UN=self.username.text
print(EighthWindow.UN)
class SecondWindow(Screen):
n=EighthWindow.UN
Name=StringProperty(n)
基维文件
<EighthWindow>:
name:"Eighth"
username:username
password:password
FloatLayout:
TextInput:
id: username
hint_text:"Username"
size_hint:0.6,9/40-0.1
pos_hint:{"top":4/5-0.1,"x":0.2}
multiline:False
Button:
size_hint:0.6,9/40-0.1
pos_hint:{"top":2/5-0.06,"x":0.2}
text:"Login"
on_press:
root.change_var()
app.root.current="second"
<SecondWindow>:
name:"second"
FloatLayout:
Label:
text:root.Name
pos_hint:{"x":0,"y":0.75}
size_hint:0.3,0.25
【问题讨论】:
标签: python user-interface kivy