我有3 QWidgets,我想连接。基本上应该是这样的:
| |
| |
QWidget 1 | QWidget 2 | QWidget 3
| |
| |
QSplitter1 QSplitter2到目前为止,我尝试的是:
1)将每个小部件添加到相应的QSplitter中
widget1 = QWidget()
widget2 = QWidget()
widget3 = QWidget()
splitter1 = QSplitter(self)
splitter2 = QSplitter(self)
splitter1.addWidget(widget1)
splitter1.addWidget(widget2)
splitter2.addWidget(widget2)
splitter2.addWidget(widget3)这里我得到一个可移动的拆分器,它应该是splitter2
2)将完整的splitter1 Widget作为第一个参数添加到splitter2中
widget1 = QWidget()
widget2 = QWidget()
widget3 = QWidget()
splitter1 = QSplitter(self)
splitter2 = QSplitter(self)
splitter1.addWidget(widget1)
splitter1.addWidget(widget2)
splitter2.addWidget(splitter1)
splitter2.addWidget(widget3)这里只有第一个分配器是活动的。
做这个的正确方法是什么?
发布于 2020-03-05 18:44:48
QSplitter是一个容器小部件,它的行为类似于一个QBoxLayout,增加了调整条目大小的可能性。这意味着您(通常)只需要一个拆分器,不管您在同一个方向上添加了多少个小部件。
您所指的“拆分器”,实际上是拆分器句柄(QSplitterHandle类),因此结构实际上如下:
QSplitter -------------------------------------+
| | | |
h H H |
a A A |
n N N |
d QWidget 1 D QWidget 2 D QWidget 3 |
l L L |
e E E |
| | | |
+---------------+---------------+--------------+所以,这就像这样简单:
widget1 = QWidget()
widget2 = QWidget()
widget3 = QWidget()
splitter = QSplitter(self)
splitter.addWidget(widget1)
splitter.addWidget(widget2)
splitter.addWidget(widget3)https://stackoverflow.com/questions/60551389
复制相似问题