添加水平布局和垂直布局
时间: 2023-08-03 12:03:15 浏览: 98
动态添加布局
要添加水平布局和垂直布局,可以使用QHBoxLayout和QVBoxLayout类。下面是修改后的代码示例:
```python
import sys
from PyQt5.QtWidgets import QApplication, QWidget, QLabel, QPushButton, QHBoxLayout, QVBoxLayout
class App(QWidget):
def __init__(self):
super().__init__()
self.initUI()
def initUI(self):
self.setWindowTitle('My App')
self.setGeometry(100, 100, 300, 200) # 设置窗口位置和大小
# 创建水平布局
hbox = QHBoxLayout()
label = QLabel('Hello, PyQt5!', self)
hbox.addWidget(label) # 将标签添加到水平布局
button1 = QPushButton('Button 1', self)
hbox.addWidget(button1) # 将按钮1添加到水平布局
button2 = QPushButton('Button 2', self)
hbox.addWidget(button2) # 将按钮2添加到水平布局
# 创建垂直布局
vbox = QVBoxLayout()
vbox.addLayout(hbox) # 将水平布局添加到垂直布局
button3 = QPushButton('Button 3', self)
vbox.addWidget(button3) # 将按钮3添加到垂直布局
self.setLayout(vbox) # 将垂直布局设置为窗口的主布局
self.show()
if __name__ == '__main__':
app = QApplication(sys.argv)
ex = App()
sys.exit(app.exec_())
```
在这个例子中,我们创建了一个水平布局`hbox`和一个垂直布局`vbox`。标签和按钮1、按钮2被添加到水平布局,然后将水平布局添加到垂直布局。最后,按钮3被添加到垂直布局。
通过将垂直布局设置为窗口的主布局,我们可以实现水平和垂直布局的组合。你可以根据需要添加更多的控件和调整布局。
阅读全文