【问题标题】:Can't move QDockWidget无法移动 QDockWidget
【发布时间】:2012-06-14 19:46:04
【问题描述】:

我想创建一个包含多个QDockWidgets 的小部件,以便将其放入QMainWindow。问题是,如果我用layout->addWidget(dockWidget);QDockWidgets 添加到我的QWidget 类中(我不知道任何其他方法)然后setLayout(layout) 我不能对QDockWidgets 做任何事情,但是停靠并取消停靠。我不能移动它们,我不能把它们放在另一个地方。

QMainWindowaddWidgets 的这个 QWidget 没有的功能。使用QMainWindow 一切正常,但如果我将QWidget 对象(包含一些QDockWidgets)添加到QMainWindow,我希望它也能正常工作。

有没有可能让我的QWidget 完全支持那些QDockWidgets,并充分发挥潜力(移动、缩放、停靠、改变位置)?

谢谢

【问题讨论】:

    标签: c++ qt qwidget qmainwindow qdockwidget


    【解决方案1】:

    如果您使用大量QDockWidgets,只需启用dock nesting 可能是解决根本问题的方法。

    如果您绝对需要在QMainWindow 中添加一个小部件,您可以尝试在第一个中添加另一个QMainWindow。您可能必须将第二个QMainWindowwindowFlags 属性设置为Qt::Widget

    【讨论】:

    • +1 同意,让停靠小部件按您预期的方式运行需要 QMainWindow,但它可以使其基本上不可见。相同的技术适用于在容器小部件内添加工具栏区域。
    猜你喜欢
    • 2020-12-17
    • 2011-07-03
    • 1970-01-01
    • 2016-11-08
    • 1970-01-01
    • 2013-07-26
    • 2013-03-06
    • 1970-01-01
    • 2017-10-15
    相关资源
    最近更新 更多