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

如何在Kivy应用中获取输入框内容并点击按钮保存

实现Kivy按钮点击保存输入框内容的解决方案

要实现点击按钮保存输入框内容,你需要给输入框和按钮建立关联,并编写保存逻辑,具体修改如下:

修改Python代码

在DrawCanvasWidget类中添加ObjectProperty关联输入框,再编写保存内容的方法:

from kivy.app import App
from kivy.graphics import Line, Color
from kivy.uix.widget import Widget
from kivy.properties import ObjectProperty
from kivy.config import Config
Config.set('graphics', 'resizable', False)
from kivy.core.window import Window
Window.size = (450, 800)

class DrawCanvasWidget(Widget):
    # 定义属性关联输入框
    input_box = ObjectProperty(None)

    def save_input(self):
        # 获取输入框内容
        content = self.input_box.text.strip()
        if content:
            # 写入文件,这里用input_content.txt作为保存文件
            with open('input_content.txt', 'a', encoding='utf-8') as f:
                f.write(content + '\n')
            # 清空输入框
            self.input_box.text = ''
            print("内容已保存")
        else:
            print("输入内容为空,不保存")

class PaintApp(App):
    def build(self):
        self.draw_canvas_widget = DrawCanvasWidget()
        return self.draw_canvas_widget

if __name__ == "__main__":
    PaintApp().run()

修改kv代码

给TextInput设置id,并绑定按钮的on_press事件到保存方法:

<DrawCanvasWidget>
    input_box: input_text  # 关联Python中的input_box属性
    orientation: "vertical"
    canvas.before:
        Color:
            rgba: [1,1,1,1]
        Rectangle:  
            pos: self.pos
            size: self.size
    TextInput:
        id: input_text  # 设置id供关联使用
        multiline:False
        font_size:20
        pos:75,450
        size:300,40
        allow_copy:False
        cursor_color:[0,1,0,1]
    Button:
        text:'ok'
        bold:True
        size_hint:None,None
        size:100,50
        pos:180,380
        on_press: root.save_input()  # 点击按钮触发保存方法

关键说明

  1. ObjectProperty用来在Python和kv之间建立控件关联,通过id绑定后就能在Python代码中直接操作输入框。
  2. save_input方法里做了简单的非空判断,避免保存空内容,保存后清空输入框方便下次输入。
  3. 文件保存用了追加模式('a'),每次保存的内容会加到文件末尾,你也可以改成覆盖模式('w'),根据需求调整。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.19 17:10:25