QDockWidget可拖动选项卡

Dwa*_*yne 19 c++ qt tabs qdockwidget

我正在使用QDockWidgets并将其中两个放在我的应用程序的左侧,以便可以使用选项卡在它们之间进行选择.但是,Qt的默认行为看起来很可怕而且不直观.它不是能够拖动选项卡来移动窗口小部件,而是在选定的选项卡(具有相同名称)下面放置另一个栏,而不是必须拖动它.作为用户,很难搞清楚这一点.

在此输入图像描述

(我的QDockWidgets是"属性"和"库")

有没有办法摆脱这第二个栏,并使其能够通过拖动标签本身来移动我的QDockWidgets?

sjt*_*eri 6

如果要添加QTabWidgets到派生自的主窗口QMainWindow,可以尝试tabifyDockWidget.它会QDockWidgets像你想要的那样列出两个,当然你可以拖动它们.

dockWidget1 = new QDockWidget("Tab1") ;
dockWidget2 = new QDockWidget("Tab2") ;
this->addDockWidget(Qt::LeftDockWidgetArea ,  dockWidget1 );
this->addDockWidget(Qt::LeftDockWidgetArea ,  dockWidget2 );
this->tabifyDockWidget(dockWidget1,dockWidget2);
Run Code Online (Sandbox Code Playgroud)


Tom*_*Tom 1

你有没有尝试过:

myDockingWidget->setTitleBarWidget(0)
Run Code Online (Sandbox Code Playgroud)

编辑:

    QWidget* titleWidget = new QWidget(this);
    mUi.dockWidget->setTitleBarWidget(titleWidget);
Run Code Online (Sandbox Code Playgroud)

其中“this”是 QMainWindow

这将删除标题栏,但我不确定如何使 QDockWidget 可从选项卡中拖动