5.2.6 保存窗口状态
在实际应用软件中,当配置好软件的一些窗口位置或者工具栏的布局位置之后,想要下一次打开的时候立即回到之前配置的状态,QmainWindow提供了saveState和saveGeometry()函数用于实现这些功能。
1.保存与恢复主窗口位置信息相关函数
QByteArray QWidget::saveGeometry() const
bool QWidget::restoreGeometry(const QByteArray &geometry)
saveGeometry()函数用于获取当前主窗口的位置信息,用QByteArray字节数组返回。restoreGeometry函数:根据QByteArray字节数组保存的信息恢复之前的状态。
2.保存与恢复工具栏和描接窗口的布局状态相关函数
QByteArray QMainWindow::saveState(int version = 0) const
bool QMainWindow::restoreState(const QByteArray &state, int version = 0)
saveState函数用于获取当前窗口中布局的状态信息,用QByteArray字节数组返回。形参version用来设置版本号,缺省值为0。restoreState用户恢复之前的设置,与saveState函数配合使用。需要注意的是:Qt中的部件只有在setObjectName后才可以saveState,restoreState。所以主窗口中的工具栏和描接窗口需要设置对象名称之后才能使用saveStat
|