pysimplegui 页面切换
时间: 2024-09-08 18:03:12 浏览: 81
在PySimpleGUI中,可以使用`Window`对象的`hide()`和`unhide()`方法来实现页面的切换。具体来说,可以创建多个`Window`对象,然后在需要切换页面的时候,先将当前页面隐藏,再将需要显示的页面显示出来。
以下是一个简单的示例代码,其中包含两个页面,分别为`page1`和`page2`:
```python
import PySimpleGUI as sg
# 定义页面1的布局
layout1 = [[sg.Text('这是页面1')],
[sg.Button('切换到页面2')]]
# 定义页面2的布局
layout2 = [[sg.Text('这是页面2')],
[sg.Button('切换到页面1')]]
# 创建两个Window对象
window1 = sg.Window('页面1', layout1)
window2 = sg.Window('页面2', layout2, visible=False)
while True:
event1, values1 = window1.read() # 读取页面1的事件和值
if event1 == sg.WIN_CLOSED:
break
if event1 == '切换到页面2':
window1.hide() # 隐藏页面1
window2.unhide() # 显示页面2
event2, values2 = window2.read() # 读取页面2的事件和值
if event2 == sg.WIN_CLOSED:
break
if event2 == '切换到页面1':
window2.hide() # 隐藏页面2
window1.unhide() # 显示页面1
window1.close()
window2.close()
```
在上面的代码中,我们首先定义了两个页面的布局,然后创建了两个`Window`对象,其中`window2`的`visible`属性设置为`False`,表示一开始不显示该页面。接着进入一个无限循环,不断读取当前页面的事件和值,如果事件是关闭窗口,则退出循环;如果事件是切换页面,则先隐藏当前页面,再显示需要切换到的页面。最后关闭两个`Window`对象。
阅读全文