Site Tools


cppqtexample

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revision Previous revision
cppqtexample [2013/03/21 04:18]
konovalov [Пример отрисовки стиля, путем наследования и переопределения QStyle]
cppqtexample [2013/03/31 01:12] (current)
konovalov [Пример вызова модального и не модального окна]
Line 796: Line 796:
     }     }
  
 +==== Глобальный класс настроек + синглтон ====
 +setting.h
 +
 +    #include <​QSettings>​
 +    ​
 +    class GlobalSetting : public QSettings{
 +    public:
 +        static GlobalSetting* getObj(); //Singleton
 +    private:
 +        GlobalSetting(const QString &​fileName,​ Format format, QObject *parent = 0);
 +        static GlobalSetting* m_instance;
 +    };
 +    ​
 +    extern GlobalSetting* appSetting;
 +
 +setting.cpp
 +    #include "​setting.h"​
 +    ​
 +    GlobalSetting* GlobalSetting::​m_instance = 0;
 +    ​
 +    GlobalSetting* GlobalSetting::​getObj(){
 +        if(m_instance == 0){
 +            m_instance = new GlobalSetting("​./​config.ini",​ QSettings::​IniFormat);​
 +        }
 +        return m_instance;
 +    }
 +    ​
 +    GlobalSetting::​GlobalSetting(const QString &​fileName,​ Format format, QObject *parent) :
 +        QSettings(fileName,​ format, parent)
 +    {
 +    ​
 +    }
 +    ​
 +    GlobalSetting* appSetting = GlobalSetting::​getObj();​
 +
 +main.cpp
 +  #include "​setting.h"​
 +  ​
 +  #можно использовать глобальный объект настроек
 +  appSetting->​setValue("​some\some2",​ "this value"​)
cppqtexample.txt · Last modified: 2013/03/31 01:12 by konovalov

Page Tools