pyqt5中如何在主界面设置一个QVBoxLayout并改变大小和位置
时间: 2023-11-28 18:47:52 浏览: 468
在PyQt5中,可以使用`QVBoxLayout`类来创建一个垂直布局。要将其添加到主窗口中,可以使用主窗口的`setLayout`方法。以下是一个简单的示例代码:
```python
from PyQt5.QtWidgets import QApplication, QMainWindow, QVBoxLayout, QWidget
app = QApplication([])
window = QMainWindow()
# 创建一个QWidget作为主窗口的中心部件
central_widget = QWidget()
window.setCentralWidget(central_widget)
# 创建一个QVBoxLayout
layout = QVBoxLayout()
central_widget.setLayout(layout)
# 添加一些小部件到布局中
layout.addWidget(QPushButton('Button 1'))
layout.addWidget(QPushButton('Button 2'))
layout.addWidget(QPushButton('Button 3'))
# 设置布局的大小和位置
layout.setGeometry(50, 50, 200, 200)
window.show()
app.exec_()
```
在这个例子中,我们首先创建了一个`QMainWindow`和一个`QWidget`,并将后者设置为中心部件。然后,我们创建一个`QVBoxLayout`并将其设置为中心部件的布局。接下来,我们向布局中添加了三个`QPushButton`小部件。最后,我们使用`setGeometry`方法设置了布局的大小和位置。
注意,`setGeometry`方法用于设置布局本身的大小和位置,而不是其中的小部件。如果要更改小部件的大小和位置,应该使用它们自己的`setGeometry`方法。
阅读全文