Python 3.x 按下按钮时如何在文本输入中打印值?(基维)

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

我正在制作一个日志GUI,但是当按下按钮时,我找不到如何打印两个文本输入的值

这是我的.py:

这是我的.kv:重要的部分在最后一行

#[...]

<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()