已知窗口尺寸pysimplegui如何将布局内容全部在窗口居中显示
时间: 2023-11-28 09:49:34 浏览: 115
小程序的居中布局,你可以这样做
可以使用`sg.Window`对象的`Finalize()`方法获取窗口的实际大小,然后计算布局内容的位置,使其居中显示。
以下是一个示例代码:
```python
import PySimpleGUI as sg
# 创建布局
layout = [
[sg.Text("Hello, World!")],
[sg.Button("OK")]
]
# 创建窗口
window = sg.Window("My Window", layout)
# 获取窗口实际大小
window.Finalize()
win_width, win_height = window.Size
# 获取布局内容的实际大小
layout_width, layout_height = window.FindElement('_COL0_').Size
# 计算布局内容的位置
x_pos = (win_width - layout_width) // 2
y_pos = (win_height - layout_height) // 2
# 移动布局内容到居中位置
window.FindElement('_COL0_').Move(x_pos, y_pos)
# 运行窗口
while True:
event, values = window.Read()
if event == "OK" or event == sg.WIN_CLOSED:
break
window.Close()
```
在这个例子中,我们首先创建了一个简单的布局,包括一个文本和一个按钮。然后,我们创建了一个窗口,并使用`Finalize()`方法获取窗口的实际大小。接下来,我们获取布局内容的实际大小,并计算出它应该在窗口中居中显示的位置。最后,我们使用`Move()`方法将布局内容移动到居中位置。
运行这个程序,你会看到布局内容在窗口中央居中显示。
阅读全文