Qt保存MainWindow的窗口布局,并在再次打开时显示

本文介绍了如何利用QMainWindow的saveGeometry()和saveState()函数,结合QSettings类,来保存和恢复主窗口的布局。在构造函数中调用保存函数,关闭时调用恢复函数,实现用户自定义布局的持久化。通过指定QSettings的公司和应用名称,将布局信息存储在.ini配置文件中,并可指定文件路径。
摘要由CSDN通过智能技术生成

     QMainWindow中有函数saveGeometry()和saveState()来保存主窗口布局。

     可以在构造函数中调用保存函数,在主窗口中关闭函数(closeEvent())中调用恢复函数,这样就可以保存上一次布局了。

     注意:该方法是通过QSettings类,将布局设置在“.ini”的配置文件中,文件默认是在系统目录,若要使其在指定的文件目录,需要在QSettings实例化对象时,指定文件目录,即添加文件路径即可。

  • // 保存

  • QSettings settings("Software Inc.", "Icon Editor");

  • settings.beginGroup("mainWindow");

  • settings.setValue("geometry", saveGeometry());

  • settings.setValue("state", saveState());

  • settings.endGroup();

  • // 恢复

  • QSettings settings("Software Inc.", "Icon Editor");

  • settings.beginGroup("mainWindow");

  • restoreGeometry(settings.value("geometry").toByteArray());

  • restoreState(settings.value("state").toByteArray());

  • settings.endGroup();

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值