我想知道是否有一种方法可以根据 PySimple GUI 中的按钮单击来管理不同的布局。我刚刚开始使用这个框架,我想找到导航菜单的最佳方式。不一定要使用不同的布局,但这让我想到了最直观的方法。
我在想,当选择某个子菜单按钮时,可能会有一个布局列表被推到顶部。
layouts = [layout1, layout2, layout3, layout4]
或者可以使用以下命令启动程序:
layout = layout1
当选择子菜单时,只需将状态更改为:
layout = layout2
例如,有一个“主菜单”布局,然后单击按钮,将不同的布局或“子菜单”带到“前面”,以便整个程序在一个窗口中运行。也许看起来像这样:
主菜单
按钮1
按钮2
Button 3
单击按钮 1 时,窗口保持打开状态,但显示更改为子菜单 1。
从 PySimpleGui 文档中,我使用推荐用于构建某些程序的持久窗口循环:
import PySimpleGUI as sg
sg.theme('BluePurple')
layout = [[sg.Text('Your typed chars appear here:'), sg.Text(size=(15,1), key='-OUTPUT-')],
[sg.Input(key='-IN-')],
[sg.Button('Show'), sg.Button('Exit')]]
window = sg.Window('Pattern 2B', layout)
while True: # Event Loop
event, values = window.read()
print(event, values)
if event in (None, 'Exit'):
break
if event == 'Show':
# Update the "output" text element to be the value of "input" element
window['-OUTPUT-'].update(values['-IN-'])
window.close()
我愿意完全改变结构,但我想在开始构建功能之前先取消菜单导航。