Python 3.x 按下按钮时如何在文本输入中打印值?(基维)
我正在制作一个日志GUI,但是当按下按钮时,我找不到如何打印两个文本输入的值 这是我的.py: 这是我的.kv:重要的部分在最后一行Python 3.x 按下按钮时如何在文本输入中打印值?(基维),python-3.x,class,kivy,Python 3.x,Class,Kivy,我正在制作一个日志GUI,但是当按下按钮时,我找不到如何打印两个文本输入的值 这是我的.py: 这是我的.kv:重要的部分在最后一行 #[...] <Login_Screen>: #[...] BoxLayout: AnchorLayout: #[...] TextInput01: # Come from @TextInput id: user_input
#[...]
<Login_Screen>:
#[...]
BoxLayout:
AnchorLayout:
#[...]
TextInput01: # Come from @TextInput
id: user_input
BoxLayout:
#[...]
AnchorLayout:
TextInput01: # Come from @TextInput
id: password_input
BoxLayout:
Button01: # Come from @Button
id: login
text: 'Login'
Button01: # Come from @Button
id: register
text: 'Register'
on_press: root.register()
[…]是我删除的代码,以便更清楚地说明这一点
我想在按下寄存器时打印密码输入值和用户输入值。
代码必须在.py文件中,因为我不想只打印值,我想做一些更实用的东西,但这是一个让我理解的示例。请参考下面的代码片段和示例 一小条 实例 main.py 主电压(千伏) 输出
谢谢你的回答!我想问你一个问题,如果你不介意你没有义务回答的话:是否可以修改注册表,使其能够进入MainApp而不是Login_Screen类并继续工作?是的,这是可能的。1您必须将register方法移动到MainApp类中。2在register方法中,将root添加到打印方法中,例如self.root.ids.user_input.text和self.root.ids.password_input.text。3在kv文件中,将on_press:root.register替换为on_press:app.register
#[...]
<Login_Screen>:
#[...]
BoxLayout:
AnchorLayout:
#[...]
TextInput01: # Come from @TextInput
id: user_input
BoxLayout:
#[...]
AnchorLayout:
TextInput01: # Come from @TextInput
id: password_input
BoxLayout:
Button01: # Come from @Button
id: login
text: 'Login'
Button01: # Come from @Button
id: register
text: 'Register'
on_press: root.register()
def register(self):
print("user: ", self.ids.user_input.text)
print("password: ", self.ids.password_input.text)
from kivy.app import App
from kivy.uix.boxlayout import BoxLayout
class Login_Screen(BoxLayout):
def register(self):
print("user: ", self.ids.user_input.text)
print("password: ", self.ids.password_input.text)
class MainApp(App):
def build(self):
return Login_Screen()
if __name__ == '__main__':
MainApp().run()
#:kivy 1.10.0
<Login_Screen>:
BoxLayout:
AnchorLayout:
TextInput:
id: user_input
BoxLayout:
AnchorLayout:
TextInput:
id: password_input
BoxLayout:
Button:
id: login
text: 'Login'
Button:
id: register
text: 'Register'
on_press: root.register()