我是基维的新手,我想为桌面应用程序创建一个简单的登录系统。
以下是我的python代码:
class LoginPage(Screen):
pass
class UserPage(Screen):
pass
class ScreenManagement(ScreenManager):
pass
kv_file = Builder.load_file('login.kv')
class LoginApp(App):
def builder(self):
return kv_file
LoginApp().run()
和基维档案
ScreenManagement:
LoginPage:
UserPage:
<LoginPage>:
name: "login_page"
BoxLayout:
TextInput:
id: login
TextInput:
id: passw
Button:
text: "go"
on_release: app.root.current = "user"
<UserPage>:
name: "user"
Button:
text: "back"
on_release: app.root.current = "login_page"
我希望它只在我需要表单中的文本时才更改屏幕(例如-TextInput(login)=‘username’,TextInput(pass)=‘password’)。
我知道我需要写一个方法,但是我需要帮助。
在LoginPage下的.py代码中,可以初始化类属性,如用户名和密码。可以创建这些类属性,以便在类中的其他方法中使用。它们可以存储用户名和密码。例如:
首先创建LoginPage类,并将kivy screen类作为参数传递。
其次,我们初始化了两个类属性:用户名和密码。我们给self.username和self.password的值username和password与参数username和password匹配。
第三,我们创建了一个名为check_password的函数,并传递self,以便它可以获得在initialize方法中定义的类属性(用户名和密码)。我们可以给这些属性值,所以我给self.username值'random_username',self.password值'random_password'。
第四,我们可以运行if语句,输入的用户名与self.username的值相匹配,在textinput框中输入的密码与self.password的值相匹配,当前页可以立即翻到您的用户页(self.parent.current='user')。
在您的.kv文件中,您需要“绑定”我们用按钮创建的函数,以便在释放按钮时启动此函数。 在.kv文件中,您可以将“go”按钮更改为以下内容:
当您的按钮被释放时,它将启动我们刚刚创建的check_password功能,检查在文本输入框中输入的用户名和密码是否有效。
你必须创建一个方法,让我得到文本并进行验证。按下按钮时应调用此方法。如果凭据正确,则必须更改屏幕。
*.py
*.kv
相关问题 更多 >
编程相关推荐