QSplitter类允许用户通过拖动它们之间的边界来控制子组件的大小。 继承层次结构如下所示:
(QObject,QPaintDevice) - QWidget - QFrame - QSplitter
QSplitter类的构造函数为:
QSplitter( QWidget parent = None)
QSplitter( Qt.Orientation orientation, QWidget parent = None)
参数orientation指定QSplitter组件的方向,可以是QtCore.Qt.Horizontal(水平)或QtCore.Qt.Vertical(垂直)。
图片.png
以下是显示上图的代码:
from PyQt5 import QtWidgets,QtCore
import sys
app = QtWidgets.QApplication (sys.argv)
window = QtWidgets.QWidget ()
splitter = QtWidgets.QSplitter(QtCore.Qt.Vertical)
label1 = QtWidgets.QLabel("标签组件 1")
label2 = QtWidgets.QLabel("标签组件 2")
window.resize(200,400)
label1.setFrameStyle(QtWidgets.QFrame.Box | QtWidgets.QFrame.Plain)
label2.setFrameStyle(QtWidgets.QFrame.Box | QtWidgets.QFrame.Plain)
splitter.addWidget(label1)
splitter.addWidget(label2)
vbox = QtWidgets.QVBoxLayout()
vbox.addWidget(splitter)
window.setLayout(vbox)
window.show()
sys.exit(app.exec_ ())