【发布时间】:2014-12-18 18:14:20
【问题描述】:
我正在使用 PySide 和 pyqtgraph 构建一个应用程序,并且正在使用单个 DockArea 中的多个扩展坞 (pyqtgraph.dockarea.Dock) 构建它。但是我注意到,通过单击并拖动分隔它们的拆分器来调整停靠点的大小时,您可以轻松地将它们拖动到很小的位置,直到它们突然消失。在它们消失后,如果您将仍然存在的滑块拖回以再次创建空间,它们将重新出现。
例如在pyqtgraph自带的dockarea例子中,如果你把左侧面板中的splitter往下拉,最终左下dock消失了。将其向上拖动并重新出现。如何完全防止消失过程发生?我希望所有码头始终可见。
我查看了 pyqtgraph.dockarea 代码,但找不到控制调整大小行为的方法。我已经在我的应用程序中对 Dock 进行了子类化,因此如果有必要以这种方式修改方法,我可以轻松完成。
更新:此代码解决了问题(请参阅下面 Luke 的回答)
class DockArea(pyqtgraph.dockarea.DockArea):
def makeContainer(self, typ):
new = super(DockArea, self).makeContainer(typ)
new.setChildrenCollapsible(False)
return new
【问题讨论】: