一、闲言少叙,首选结合界面来说明问题
这个界面有两个dockwidget控件,左边和右边
坐标那个控件把titlebar去掉了,右边那个还在
通过下面代码可以去掉titlebar
mTitleBarWidget = new QWidget();
ui->dockWidget->setTitleBarWidget(mTitleBarWidget);
二、没有titlebar就没办法通过鼠标来浮动窗口,说以我加了一个按钮通过代码来实现浮动功能
ui->dockWidget->setFloating(false);
三、那么窗口浮动独立出来如何设置这个浮动窗口的大小呢
qt窗口浮动或dock会发射一个信号
topLevelChanged(bool)
没错就是用它,我们就能知道窗口浮动了还是dock了,当然要连接自己的槽
connect(ui->dockWidget,SIGNAL(topLevelChanged(bool)),this,SLOT(slotTopLevelChanged(bool)));
槽函数实现