pyqt5界面设计forget to create a layout
时间: 2024-06-09 20:09:22 浏览: 6
在 PyQt5 中,要在窗口中添加控件和布局,需要使用 QWidget 和 QLayout 类。
首先,创建一个 QWidget 对象,并将它作为主窗口。然后,使用 QLayout 类来创建布局。常用的布局有 QHBoxLayout、QVBoxLayout、QGridLayout 等。将布局添加到 QWidget 对象中,然后将控件添加到布局中。
以下是一个简单的示例代码,演示如何在 PyQt5 中创建一个带有布局的窗口:
```python
import sys
from PyQt5.QtWidgets import QApplication, QWidget, QPushButton, QHBoxLayout, QVBoxLayout
class Example(QWidget):
def __init__(self):
super().__init__()
self.initUI()
def initUI(self):
btn1 = QPushButton('Button 1')
btn2 = QPushButton('Button 2')
hbox = QHBoxLayout()
hbox.addWidget(btn1)
hbox.addWidget(btn2)
vbox = QVBoxLayout()
vbox.addStretch(1)
vbox.addLayout(hbox)
self.setLayout(vbox)
self.setGeometry(300, 300, 300, 150)
self.setWindowTitle('Layout Example')
self.show()
if __name__ == '__main__':
app = QApplication(sys.argv)
ex = Example()
sys.exit(app.exec_())
```
在这个示例中,我们创建了一个 QWidget 对象作为主窗口,并添加了两个 QPushButton 控件。我们使用 QHBoxLayout 类创建了一个水平布局,将两个按钮添加到布局中。然后,我们使用 QVBoxLayout 类创建了一个垂直布局,并将水平布局添加到其中。我们还使用 addStretch() 方法将布局居中。
最后,我们使用 setLayout() 方法将布局添加到 QWidget 对象中。调用 setGeometry() 方法设置窗口大小和位置,调用 setWindowTitle() 方法设置窗口标题,最后调用 show() 方法显示窗口。
相关推荐
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)