我在QMainWindow中添加了3个QDockWidget,先后顺序是leftWidget,rightWidget,bottomWidget,运行后bottomWidget占据了整个主窗口的底部,我想要让它停在底部,但是不要撑起左右两个停靠窗口,这需要怎么设置?
你可以在创建 QDockWidget 时设置它的停靠位置,例如:
QDockWidget *bottomWidget = new QDockWidget(tr("Bottom Widget"));
bottomWidget->setAllowedAreas(Qt::BottomDockWidgetArea);
addDockWidget(Qt::BottomDockWidgetArea, bottomWidget);
你也可以使用 setDockOptions 函数设置停靠窗口的相关选项,例如让停靠窗口可以浮动:
bottomWidget->setDockOptions(QDockWidget::DockOption::AllowFloating);
你还可以使用 tabifyDockWidget 函数将停靠窗口和其他停靠窗口放在一个停靠区域内:
tabifyDockWidget(leftWidget, rightWidget);
tabifyDockWidget(leftWidget, bottomWidget);
这样就可以让 bottomWidget 停在底部,并且不会撑起左右两个停靠窗口。