返回已删除的 QDockWidget 标题栏以实现可拖动性
Posted
技术标签:
【中文标题】返回已删除的 QDockWidget 标题栏以实现可拖动性【英文标题】:Return removed title bar of a QDockWidget for drag-ability 【发布时间】:2020-07-14 15:37:29 【问题描述】:所以我们可以像这样删除QDockWidget
的标题栏:
self.dW1.setTitleBarWidget(QtGui.QWidget(self.dW1))
现在停靠小部件不可取消停靠和拖动。那么有没有办法把标题栏放回去呢?
或者也许是另一种(甚至更好)的方式,有没有一种方法可以将(隐藏标题栏的)拖动能力委托给整个窗口(我希望从上面的代码部分中得到,但它不起作用那个 wqay) 还是标签页?
只是为了避免一些死胡同:我已经测试了一些涉及拖动 QTabWidget 选项卡的解决方案,但它们缺乏选项卡式 QDockWidgets 的灵活性(例如将其取消停靠到新窗口并停靠到窗口的不同位置)。
【问题讨论】:
【参考方案1】:如果你想返回默认的标题栏,那么你必须通过None:
self.dW1.setTitleBarWidget(None)
【讨论】:
谢谢,作为一个魅力,被接受的答案。你知道如何查询 TitleBarWidget 的状态吗?我试过if self.dw1.titleBarWidget == None
,但不管dw1
titleBarWidget 状态如何,它总是给出False 值...
@Oak_3260548 使用if self.dw1.titleBarWidget() is None:
以上是关于返回已删除的 QDockWidget 标题栏以实现可拖动性的主要内容,如果未能解决你的问题,请参考以下文章
QMdiArea 子窗口中的 QDockWidget 不能停靠在顶部和底部