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

PySimpleGui中ButtonMenu的下拉选项能否更新?

解决PySimpleGui ButtonMenu下拉选项更新问题

你遇到的错误是因为ButtonMenu的update()方法确实不支持menu_def参数,官方设计里更新菜单定义要用专门的方法。

直接调用set_menu_def()方法就能修改下拉选项,示例代码如下:

# 定义新的菜单结构
new_menu_def = [
    ['New Boss 1', ['Subitem 1', 'Subitem 2']],
    ['New Boss 2']
]

# 更新ButtonMenu的下拉菜单选项
window['-SLAYER-'].set_menu_def(new_menu_def)

如果需要同时更新按钮上显示的文本,可以搭配update()方法使用:

window['-SLAYER-'].update('New Bosses')  # 更新按钮显示文本
window['-SLAYER-'].set_menu_def(new_menu_def)  # 更新下拉菜单内容

注意:set_menu_def()接受的参数格式必须和初始化时的menu_def完全一致,确保新菜单结构符合PySimpleGui的嵌套列表规范。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.01 04:46:48