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

如何点击按钮后清空Flet Python文本框的值并存储到数据表?

Flet实现点击按钮清空文本框并存储数据到数据表

针对你的需求,我帮你修改了代码,实现点击按钮后验证文本框、存储数据、清空输入框的功能,同时用列表模拟数据表存储记录:

import flet as ft

def main(page: ft.Page):
    # 初始化存储数据的列表,模拟数据表
    data_records = []
    # 定义文本框控件
    sstid = ft.TextField(label="输入ID", hint_text="请输入要存储的ID")

    def btn_click(e):
        if not sstid.value.strip():  # 去除首尾空格后验证是否为空
            sstid.error_text = "请输入有效内容"
            page.update()
        else:
            # 将数据存入模拟的数据表(列表)
            data_records.append({"sstid": sstid.value.strip()})
            # 清空文本框
            sstid.value = ""
            # 清除错误提示(如果有的话)
            sstid.error_text = None
            # 更新页面
            page.update()
            # 可选:打印存储的数据,验证是否成功
            print("当前存储的数据:", data_records)

    page.add(
        ft.Container(
            height=250,
            bgcolor="white10",
            border=ft.border.all(1, "#ebebeb"),
            border_radius=8,
            padding=15,
            content=ft.Column(
                expand=True,
                controls=[
                    sstid,  # 添加文本框到页面
                    ft.ElevatedButton("添加", on_click=btn_click)
                ],
            )
        )
    )

if __name__ == "__main__":
    ft.app(target=main)

关键改动说明:

  • 新增了data_records列表作为模拟的数据表,用来存储每次提交的记录
  • 添加了sstid文本框控件,让用户可以输入内容
  • 优化了空值验证逻辑,去除输入内容的首尾空格,避免空字符提交
  • 存储数据后清空文本框,并清除错误提示,提升用户体验
  • 补充了程序入口if __name__ == "__main__",确保可以直接运行

如果需要对接真实数据库(比如SQLite、MySQL),只需要把data_records.append(...)的部分替换为对应的数据库插入语句即可。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.29 01:27:16