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

如何在PySimpleGui中点击输入框时清除预填充内容?

PySimpleGui 输入框点击自动清空预填充内容

你可以通过监听输入框的焦点进入事件来实现这个需求,既保留预填充的提示作用,又优化用户体验,具体实现如下:

核心思路

绑定输入框的 <FocusIn> 事件,当输入框获得焦点时,判断当前内容是否为初始的预填充文本,若是则清空。

完整代码示例

import PySimpleGUI as sg

# 定义布局,保留预填充文本和唯一key
layout = [
    [sg.InputText("yourInput", key='-INPUT-')],
    [sg.Button('Ok')]
]

window = sg.Window('Input Auto Clear Demo', layout)

while True:
    event, values = window.read()
    if event == sg.WIN_CLOSED:
        break
    # 监听输入框获得焦点的事件
    if event == '-INPUT- + <FocusIn>':
        # 仅当内容为初始提示文本时清空,避免误删用户输入内容
        if values['-INPUT-'] == 'yourInput':
            window['-INPUT-'].update('')

window.close()

补充说明

  • 这种方式不会影响用户后续输入的内容:如果用户已经输入了自定义内容,再次点击输入框不会清空,只会聚焦到输入框
  • 若希望每次点击都清空(不管当前内容是什么),可以去掉if values['-INPUT-'] == 'yourInput':这个判断,直接执行update('')

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.18 20:18:14