当前位置: 首页 > news >正文

PySimpleGUI中常见功能元素和函数缩写形式示例

以下是PySimpleGUI中常见功能元素和函数缩写形式的具体代码示例,涵盖基础控件、弹窗、窗口操作等场景,附带详细注释说明:


1. 基础元素缩写示例

文本与输入框

import PySimpleGUI as sglayout = [[sg.T("用户名:")],  # sg.T 是 sg.Text 的缩写[sg.I(key="-USER-")],  # sg.I 是 sg.Input 的缩写[sg.T("密码:")],[sg.I(key="-PASS-", password_char="*")],  # 密码输入框
]window = sg.Window("登录界面", layout)
event, values = window.read()
window.close()print(f"用户名: {values['-USER-']}, 密码: {values['-PASS-']}")

按钮与复选框

layout = [[sg.B("提交", key="-SUBMIT-")],  # sg.B 是 sg.Button 的缩写[sg.CB("记住密码", key="-REMEMBER-")],  # sg.CB 是 sg.Checkbox 的缩写
]window = sg.Window("选项", layout)
event, values = window.read()
window.close()print(f"提交按钮被点击: {event == '-SUBMIT-'}")
print(f"记住密码: {values['-REMEMBER-']}")

2. 弹窗函数缩写示例

消息弹窗

sg.popup("操作成功!")  # 基础弹窗
sg.popup_ok("确认删除?", title="警告")  # 带OK按钮
sg.popup_yes_no("继续执行?")  # 带Yes/No按钮# 获取用户输入
name = sg.popup_get_text("请输入姓名:")
print(f"输入的姓名: {name}")

文件选择弹窗

file_path = sg.popup_get_file("选择文件", file_types=(("文本文件", "*.txt"),))
print(f"选择的文件: {file_path}")folder_path = sg.popup_get_folder("选择文件夹")
print(f"选择的文件夹: {folder_path}")

3. 窗口操作示例

动态更新元素

layout = [[sg.T("状态:", key="-STATUS-")],[sg.B("开始", key="-START-"), sg.B("停止", key="-STOP-")],
]window = sg.Window("动态更新", layout)while True:event, values = window.read()if event == sg.WINDOW_CLOSED:breakelif event == "-START-":window["-STATUS-"].update("运行中...", text_color="green")  # 更新文本和颜色elif event == "-STOP-":window["-STATUS-"].update("已停止", text_color="red")window.close()

非阻塞式读取

layout = [[sg.T("倒计时:"), sg.T("10", key="-COUNT-")], [sg.B("退出")]]
window = sg.Window("倒计时", layout)count = 10
while True:event, values = window.read(timeout=1000)  # 每1秒读取一次if event == sg.WINDOW_CLOSED or event == "退出":breakcount -= 1window["-COUNT-"].update(str(count))if count == 0:sg.popup("时间到!")breakwindow.close()

4. 布局与快捷键示例

多列布局

left_col = [[sg.B("按钮1")], [sg.B("按钮2")]]
right_col = [[sg.T("右侧内容")]]layout = [[sg.Column(left_col), sg.Column(right_col)],  # 使用 sg.Column 分列
]sg.Window("多列布局", layout).read(close=True)

快捷键绑定

layout = [[sg.I(key="-INPUT-", bind_return_key=True)],  # 回车键触发事件[sg.B("提交", key="-SUBMIT-")],
]window = sg.Window("快捷键", layout)
while True:event, values = window.read()if event == sg.WINDOW_CLOSED:breakelif event == "-INPUT-" or event == "-SUBMIT-":  # 回车或点击按钮均触发sg.popup(f"输入内容: {values['-INPUT-']}")window.close()

5. 进度条与通知示例

进度条

for i in range(100):sg.one_line_progress_meter("进度", i+1, 100, key="-METER-")  # 显示进度条if not sg.one_line_progress_meter_cancel():  # 检查是否取消pass

右下角通知

sg.popup_notify("任务完成!", title="通知", location=(1000, 600))  # 自定义位置

总结

  • 元素缩写sg.Tsg.Isg.Bsg.CB 等简化代码。
  • 弹窗函数sg.popupsg.popup_get_text 等快速交互。
  • 动态更新:通过 window[key].update() 实时修改界面。
  • 布局技巧:使用 sg.Columnsg.Frame 组织复杂界面。

这些示例覆盖了PySimpleGUI的核心功能,适合快速上手开发简单GUI应用。

http://www.gsyq.cn/news/13814.html

相关文章:

  • 实用指南:interface g0/0/0.1 概念及题目
  • 万字长文:企业可观察性平台的建设方案实践
  • 离最新版本只有一步之遥了!重新启动 Chrome 即可完成更新
  • 2025 昆明哪家旅行社好?久游国际赏龙门滇池风光
  • 2025云南游选哪家?昆明久游商务车舒适超赞
  • CF Round 942(#1967) 总结
  • 2025 热压机厂家权威推荐排行榜:深度解析 TOP3 优质厂家核心竞争力,最新选购指南发布
  • 2025 最新权威推荐!国内车床生产厂家 TOP 排行榜发布,聚焦数控 / 卧式 / 斜床身 / 重型等多类型设备优选这几家
  • 2025云南哪家旅行社好?昆明久游精品小团超舒适
  • 详细介绍:42.传输层协议TCP(上)
  • 仿muduo库One Thread One Loop主从Reactor模型实践——介绍 - 实践
  • Lucene 8.7.0 版本中dvd、dvm文件详解 - 教程
  • 详解 PHP 中的命名空间 Namespace 与 PSR4 自动加载
  • 摩尔线程88天过会,过会当天提交注册:看懂这3个关键,才算懂国产GPU的“生存逻辑”
  • 上海住宅新规调整,背后的野心可大了
  • 魔兽争霸3冰封王座安装包下载
  • AI两周手搓一个进度管理神器,快来安排你的国庆假期吧
  • 读人形机器人26人类情感
  • 岐金兰AI元人文构想的全面系统研究——声明ai研究
  • 2025登车桥生产厂家最新推荐榜单:聚焦月台登车桥、装卸登车桥、卸货平台登车桥、10吨登车桥产品,精选五家实力企业助力采购
  • 【SimpleFOC】区分BLDC霍尔安装间隔60还是120
  • [GenAI] 提示词工程
  • 【Nordic随笔】
  • 数据类型-字典
  • 步进电机T型加减速
  • 苍穹外卖-day03(公共字段自动填充,新增菜品,菜品分页查询,删除菜品,修改菜品) - a
  • 对四大经典请求方式的疑惑
  • 2026 NOI 做题记录(四)
  • 给小孩出数学题
  • dotnet项目编译运行