5.2.6 保存窗口状态

Posted DS小龙哥

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了5.2.6 保存窗口状态相关的知识,希望对你有一定的参考价值。

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

以上是关于5.2.6 保存窗口状态的主要内容,如果未能解决你的问题,请参考以下文章

尝试使用片段保存夜间模式状态

VSCode自定义代码片段13——Vue的状态大管家

VSCode自定义代码片段13——Vue的状态大管家

VSCode自定义代码片段13——Vue的状态大管家

在 Fragment 中保存状态 WebView

在底部导航栏中保存片段状态