You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何通过按钮获取Kivy中TextInput的文本?(使用kv文件)

使用Kivy kv文件实现点击按钮获取输入框内容

要实现点击按钮时获取指定输入框的内容,只需利用kv文件中给输入框设置的id,在Python类的方法里通过self.ids访问对应输入框的文本即可。以下是修改后的完整代码:

Python代码

from kivy.app import App
from kivy.uix.widget import Widget

class MainWidget(Widget):
    def get_input(self):
        # 获取带id的输入框内容
        input_content = self.ids.my_text.text
        print("输入框内容:", input_content)
        
        # 若需将内容显示到第二个输入框,可添加此行(需给第二个输入框加id)
        # self.ids.second_text.text = input_content
        
        # 直接返回内容,供其他逻辑调用
        return input_content

class TheLabApp(App):
    pass

TheLabApp().run()

kv文件代码

MainWidget:

<MainWidget>:
    Button:
        size: "100", "40"
        pos:  root.width / 2 - 50, root.height / 2 - 42
        on_press: root.get_input()
    TextInput:
        size: "250", "30"
        id: my_text
        multiline: False
        pos:  root.width / 2 - 125, root.height / 2 + 32
    TextInput:
        size: "250", "30"
        id: second_text  # 给第二个输入框添加id,方便后续赋值
        multiline: False
        pos:  root.width / 2 - 125, root.height / 2

关键说明

  • 在kv文件中给目标TextInput设置id: my_text,这是kv文件中控件的唯一标识;
  • Python类的get_input方法里,通过self.ids.my_text.text就能获取该输入框的文本内容;
  • 如果要把获取到的内容同步到第二个输入框,给第二个输入框设置id后,用self.ids.second_text.text = 内容即可完成赋值。

内容的提问来源于stack exchange,提问作者Sam

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.12 10:05:22