Qt保存窗口尺寸,配置类升级版(保存分隔条)

这篇博客介绍了如何使用Qt编写一个配置类,该类能够保存和恢复窗口的尺寸以及窗口内的分隔条尺寸,提供更好的用户体验。通过示例代码展示了如何在关闭和打开窗口时自动加载和保存这些设置,适用于带有1到2个分隔条的窗口。此外,提供了示例程序下载链接。

1,简介

之前介绍了一个保存窗口尺寸的配置类,但是功能比较单一,只能保存和恢复窗口的尺寸。

实际上如果要更好的用户体验、更贴心点,也需要把窗口内分隔条的分割尺寸也保存下来。

下面这个类是我后来升级的版本,可保存含有1~2个分割条的窗口,需要更多稍微改改即可。

示例程序下载:https://pan.baidu.com/s/1ZmZyHnUPP6chnm50xv5_jQ?pwd=pf4f 
提取码:pf4f

2,效果

 

3,代码

Config.h:

#ifndef CONFIG_H
#define CONFIG_H

#include <QSplitter>
#include <QString>
#include <QWidget>

class Config
{
public:
    static Config* Instance(){
            static Config m;
            return &m;
        }

    //读配置
    int GetInt(QString key, int nDefault = 0);
    bool GetBool(QString key, bool bDefault = false);
    float GetFloat(QString key, float fDefault = 0);
    QString GetStr(QString key, QString strDefault = "");

    int GetInt(QString group, QString key, int nDefault = 0);
    bool GetBool(QString group, QString key, bool bDefault = false);
    float GetFloat(QString group, QString key, float fDefault = 0);

	void LoadWindowPosition(QWidget* pWnd);
	void LoadWindowSize(QWidget* pWnd, QSplitter *splitter1 = NULL, QSplitter* splitter2 = NULL);
    void LoadSplitterSize(QWidget* pWnd, QSplitter *splitter);
	bool LoadIntList(QString group, QString key, QList<int>& nums);

	//写配置
	void SaveValue(QString key, const QVariant &value);
    void SaveValue(QString group, QString key, const QVariant
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

逆枫゛

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值