Python 防止扩展坞的大小调整到消失的程度

Python 防止扩展坞的大小调整到消失的程度,python,pyside,pyqtgraph,Python,Pyside,Pyqtgraph,我正在用PySide和pyqtgraph构建一个应用程序,并在一个dockarea中使用多个Dock(pyqtgraph.dockarea.Dock)构建它。但是我注意到,当通过单击并拖动分隔码头的拆分器来调整码头的大小时,您可以轻松地将其拖动到非常小的位置,直到它们突然消失。它们消失后,如果您将滑块(仍在那里)拖回以再次创建空间,它们将重新显示 例如,在pyqtgraph附带的dockarea示例中,如果您向下拖动左侧面板中的拆分器,最终左下角的dock将消失。将其向上拖动,它将重新出现。我如

我正在用PySide和pyqtgraph构建一个应用程序,并在一个dockarea中使用多个Dock(pyqtgraph.dockarea.Dock)构建它。但是我注意到,当通过单击并拖动分隔码头的拆分器来调整码头的大小时,您可以轻松地将其拖动到非常小的位置,直到它们突然消失。它们消失后,如果您将滑块(仍在那里)拖回以再次创建空间,它们将重新显示

例如,在pyqtgraph附带的dockarea示例中,如果您向下拖动左侧面板中的拆分器,最终左下角的dock将消失。将其向上拖动,它将重新出现。我如何防止消失的过程发生呢?我希望所有码头始终可见

我查看了pyqtgraph.dockarea代码,但找不到控制大小调整行为的方法。我已经在我的应用程序中对Dock进行了子类化,所以如果有必要以这种方式修改方法,我可以很容易地进行修改

更新:此代码修复了问题(请参见下面Luke的答案)

DockArea类(pyqtgraph.DockArea.DockArea):
def makeContainer(自身,典型):
new=super(DockArea,self).makeContainer(典型)
new.setChildrenCollapsible(False)
还新

您可以通过DockArea中的QSplitter禁用折叠:

影响所有容器的最简单方法可能是扩展
DockArea.makeContainer()
(请注意,HContainer和VContainer是qspliter的子类)

太好了,谢谢!(首先感谢您提供pyqtgraph!)