PyQt5 框布局
QBoxLayout 将给定空间划分为框,其中每个框完全填充一个精确的小控件。它可以在垂直或水平方向添加小控件,其中垂直或水平的选择取决于对象的实例类型。
QVBoxLayout
在垂直方向添加小控件,而 QHBoxLayout
在水平方向添加小控件。
QVboxLayout - 垂直布局
我们可以使用 QVBoxLayout 类在垂直方向添加小控件。QVBoxLayout 类继承自 QBoxLayout 类。
![PyQt5 QVboxLayout](/img/Tutorial/PyQt5/PyQt5 QVBoxLayout.png)
在这个例子中,我们将小控件(按钮)添加到 QVBoxLayout 实例,然后我们将实例添加到窗口。
from PyQt5.QtWidgets import (QApplication, QComboBox, QDialog,
QDialogButtonBox, QFormLayout, QGridLayout, QGroupBox, QHBoxLayout,
QLabel, QLineEdit, QMenu, QMenuBar, QPushButton, QSpinBox, QTextEdit,
QVBoxLayout)
import sys
class Dialog(QDialog):
NumGridRows = 3
NumButtons = 4
def __init__(self):
super(Dialog, self).__init__()
b1=QPushButton("Button1")
b2=QPushButton("Button2")
b3=QPushButton("Button3")
b4=QPushButton("Button4")
mainLayout = QVBoxLayout()
mainLayout.addWidget(b1)
mainLayout.addWidget(b2)
mainLayout.addWidget(b3)
mainLayout.addWidget(b4)
self.setLayout(mainLayout)
self.setWindowTitle("Form Layout - tastones.com")
if __name__ == '__main__':
app = QApplication(sys.argv)
dialog = Dialog()
sys.exit(dialog.exec_())