pysimplegui如何将布局内容全部在窗口居中显示
时间: 2023-11-28 13:49:30 浏览: 297
在PySimpleGUI中,可以使用`sg.Window`的`finalize()`方法和`sg.pin()`函数将布局内容居中显示在窗口中。
1. 使用`finalize()`方法对窗口进行最终设置,以确保布局内容已加载。
2. 使用`sg.pin()`函数将布局内容固定在窗口中央。
下面是一个示例代码:
```python
import PySimpleGUI as sg
layout = [[sg.Text('Hello, World!', font=('Helvetica', 18))],
[sg.Button('OK')]]
window = sg.Window('My Window', layout).finalize()
# 获取窗口尺寸
window_size = window.size
# 获取布局内容的尺寸
layout_size = window['-0-'].size
# 将布局内容移动到窗口中央
window['-0-'].move((window_size[0] // 2 - layout_size[0] // 2, window_size[1] // 2 - layout_size[1] // 2))
while True:
event, values = window.read()
if event in (sg.WIN_CLOSED, 'OK'):
break
window.close()
```
在上面的示例中,我们使用`window['-0-']`来获取布局内容,并使用`move()`方法将其移动到窗口中央。`window_size`和`layout_size`分别是窗口和布局内容的尺寸,使用`//`运算符是为了确保结果为整数。
阅读全文