在PyQt5中串联多个QSplitter

托马斯·克里斯托弗·戴维斯

我有3个要连接的QWidget。基本上应该看起来像这样:

           |           |
           |           |
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小部件添加到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)

在这里,只有第一个分离器处于活动状态。

这样做的正确方法是什么?

音乐家

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)

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

多个按钮在 PyQt5 python 中不起作用

来自分类Dev

Python中的多个过滤DataFrame以使用PyQt5应用

来自分类Dev

closeTab函数可关闭PyQt5中的多个选项卡

来自分类Dev

PyQt5 如何在主 Ui 中实例化多个 Ui

来自分类Dev

如何优雅地将多个信号连接到 PyQt5 中的一个函数?

来自分类Dev

在 PyQt5 中打开多个窗口时遇到问题

来自分类Dev

利用PyQt5中的QtQuick控件

来自分类Dev

在PyQt5中未触发dropEvent

来自分类Dev

更新PYQT5中的图表数据

来自分类Dev

PyQt5中的顺序编程复制

来自分类Dev

在PyQt5中实现画布

来自分类Dev

在PyQt5中打印pdf文档

来自分类Dev

在Windows 7中安装PyQt5

来自分类Dev

QTableWidget中的PyQt5 QComboBox

来自分类Dev

PyQt5中的哪个Gstreamer?

来自分类Dev

PyQt5 中的问号按钮

来自分类Dev

PyQt5 中的访问冲突错误

来自分类Dev

PyQt5 中的 QWebEngineView 和 QWidget

来自分类Dev

PyQT5 中的 GridLayout 和 VerticalLayout

来自分类Dev

如何通过pyqt5按钮启动功能的多个实例?

来自分类Dev

PyQt5:使用事件绘制多个矩形

来自分类Dev

PyQt5:同一窗口的多个实例

来自分类Dev

PyQt5:一次更改多个对象的布局

来自分类Dev

QQuickImageProvider PyQt5

来自分类Dev

PyQT5 开发

来自分类Dev

在PyQt5中找到多个随机创建的小部件(例如QLabel,QPushButton等)的mousepress事件的父级

来自分类Dev

如何从PyQt5中的QMessageBox中删除图标?

来自分类Dev

PyQt5中的connect()方法在哪里?

来自分类Dev

如何对pyqt5中的按钮单击做出反应