在我的代码中,重写了qdockwidget
qdockwidget隐藏标题栏,需要在重写的子类的构造函数中添加如下代码:
QWidget *oldTitalbar = this->titleBarWidget();
QWidget *newTitalbar = new QWidget();
this->setTitleBarWidget(newTitalbar);
delete oldTitalbar;
qdockwidget重叠时tab标签位置设置,需要在主界面中添加如下代码:
this->setTabPosition(Qt::AllDockWidgetAreas, QTabWidget::North);//设置本界面中所有的qdockwidget的标签位置在顶部
下图是不隐藏qdockwidget的标题栏,不设置重叠dockwidget的tab标签位置的效果:
下图是隐藏qdockwidget的标题栏,并设置重叠dockwidget的tab标签位置在顶部的效果:
我们设置qdockwidget停靠方向的时候,控件停靠在一边之后,另一边不会自动占满主窗口,如果需要自动占满主窗口的剩下的空间的话,需要在主窗口类中添加如下代码:
ui->centralWidget->hide();//为了让所有dockwidget能填满整个窗口界面