QMainWindow的saveState使用技巧
作用:记录dockWidget的关闭状态,以便下次打开时使用。
Saves the current state of this mainwindow’s toolbars and dockwidgets. This includes the corner settings which can be set with setCorner(). The version number is stored as part of the data.–官方文档123
注意:
1)需要给dockwidget->setObjectName(“dock”);
2)QMainWindow的closeEvent需要重写
restoreState()2;
使用Qsetting声明变量,使用setvalue函数保存dock的size;
3)创建dockwidget的时候,使用value获得dock的size,如果size合法(value(MainWin/dock).toSize().isValid),dock使用setFixSize函数。
// An highlighted block
QDockWidget *dock1=new QDockWidget(this);
dock1->setObjectName("dock1");
QSize size=Setting::value("MainWin/dock1").toSize();
if(size.isValid){
dock1->setFixSize(size);
}
MainWin::closeEvent(QCloseEvent *event){
Setting::setValue("MainWin/windowState",saveState());
Setting::setValue("MainWin/dock1",dock1->size());
}