Skip to content
  • Categories
  • Recent
  • Tags
  • Popular
  • Users
  • Groups
  • Search
  • Get Qt Extensions
  • Unsolved
Collapse
Brand Logo
  1. Home
  2. Qt Development
  3. General and Desktop
  4. Saving dial value
Forum Updated to NodeBB v4.3 + New Features

Saving dial value

Scheduled Pinned Locked Moved Solved General and Desktop
21 Posts 3 Posters 7.3k Views 2 Watching
  • Oldest to Newest
  • Newest to Oldest
  • Most Votes
Reply
  • Reply as topic
Log in to reply
This topic has been deleted. Only users with topic management privileges can see it.
  • mrjjM mrjj

    @rapid84
    Well, can you show how u save and load it. ?

    it seems to be loaded wrong maybe, becoming huge or
    could also look uninitialized.

    R Offline
    R Offline
    rapid84
    wrote on last edited by
    #5

    @mrjj

    when i save it and do qDebug like this;

    void second::on_closeButton_clicked()
    {
        save = ui->dial->value();
       qDebug() << " save val:" << save;
        close();
    }
    

    i got the rigth value from qDebug . But at startup ;

    .....
    ui->setupUi(this);   
    ui->dial->setValue(save);
    qDebug() << " save val:" << save;
    

    i got wrong value.

    1 Reply Last reply
    0
    • mrjjM Offline
      mrjjM Offline
      mrjj
      Lifetime Qt Champion
      wrote on last edited by
      #6

      ok, but how to you save it to file ? and load it from file again?

      If you dont load the old value from a file, it will
      just have some random value when you start again.

      R 1 Reply Last reply
      0
      • mrjjM mrjj

        ok, but how to you save it to file ? and load it from file again?

        If you dont load the old value from a file, it will
        just have some random value when you start again.

        R Offline
        R Offline
        rapid84
        wrote on last edited by
        #7

        @mrjj
        yow want to know whether i use QFile or something same to store the value or not ? if so , i dont use anything like that. İ just define save variable in second.h module with default value "0".

        mrjjM 1 Reply Last reply
        0
        • R rapid84

          @mrjj
          yow want to know whether i use QFile or something same to store the value or not ? if so , i dont use anything like that. İ just define save variable in second.h module with default value "0".

          mrjjM Offline
          mrjjM Offline
          mrjj
          Lifetime Qt Champion
          wrote on last edited by
          #8

          @rapid84
          Ok. but it cannot remember values from run to run, unless you save it in a file.
          I do wonder why it has that high value if you set it to 0.

          R 1 Reply Last reply
          0
          • mrjjM mrjj

            @rapid84
            Ok. but it cannot remember values from run to run, unless you save it in a file.
            I do wonder why it has that high value if you set it to 0.

            R Offline
            R Offline
            rapid84
            wrote on last edited by
            #9

            @mrjj

            if i define with "0" i got only "0" value, but when i define without any default, i got some value like "199922356" , so it is just misunderstanding. anyway, then i have to use QFile, crate a file and save the value to it, and load the save value from a file ?

            mrjjM 1 Reply Last reply
            0
            • R rapid84

              @mrjj

              if i define with "0" i got only "0" value, but when i define without any default, i got some value like "199922356" , so it is just misunderstanding. anyway, then i have to use QFile, crate a file and save the value to it, and load the save value from a file ?

              mrjjM Offline
              mrjjM Offline
              mrjj
              Lifetime Qt Champion
              wrote on last edited by mrjj
              #10

              @rapid84
              If you dont define any default value, it will just have random value as it just uses
              what ever is in that memory location.

              Yes, to keep it for later runs, you must save it to file. QFile is fine to use.
              You can also have a look at QSettings.
              http://doc.qt.io/qt-5/qsettings.html
              Its ment for saving such values.

              its easy to use

              //load
               QSettings settings("settingName");
               int  aValue=settings.value("aKey").toInt();
              
               //write
               QSettings settings("settingName");
              int somevalue=yoursave;
               settings.setValue("aKey",somevalue);
              
              R 1 Reply Last reply
              0
              • mrjjM mrjj

                @rapid84
                If you dont define any default value, it will just have random value as it just uses
                what ever is in that memory location.

                Yes, to keep it for later runs, you must save it to file. QFile is fine to use.
                You can also have a look at QSettings.
                http://doc.qt.io/qt-5/qsettings.html
                Its ment for saving such values.

                its easy to use

                //load
                 QSettings settings("settingName");
                 int  aValue=settings.value("aKey").toInt();
                
                 //write
                 QSettings settings("settingName");
                int somevalue=yoursave;
                 settings.setValue("aKey",somevalue);
                
                R Offline
                R Offline
                rapid84
                wrote on last edited by
                #11

                @mrjj

                "aKey" is a mandatory paramater ? and the reference mentions that:

                When creating a QSettings object, you must pass the name of your company or organization as well as the name of your application. For example, if your product is called Star Runner and your company is called MySoft, you would construct the QSettings object as follows:
                
                    QSettings settings("MySoft", "Star Runner");
                

                Is this mandatory ? what if , if i dont have any company ? :)

                mrjjM 1 Reply Last reply
                0
                • R rapid84

                  @mrjj

                  "aKey" is a mandatory paramater ? and the reference mentions that:

                  When creating a QSettings object, you must pass the name of your company or organization as well as the name of your application. For example, if your product is called Star Runner and your company is called MySoft, you would construct the QSettings object as follows:
                  
                      QSettings settings("MySoft", "Star Runner");
                  

                  Is this mandatory ? what if , if i dont have any company ? :)

                  mrjjM Offline
                  mrjjM Offline
                  mrjj
                  Lifetime Qt Champion
                  wrote on last edited by
                  #12

                  @rapid84
                  hi
                  the akey is the name of the value. It saves to registry so that why it needs a name
                  For you , it could be slidervalue or something that explains what u save.

                  You can use anything u like for company. Its also because its store in registry.
                  So just use some name u like that IS not a real company. :)

                  R 1 Reply Last reply
                  0
                  • mrjjM mrjj

                    @rapid84
                    hi
                    the akey is the name of the value. It saves to registry so that why it needs a name
                    For you , it could be slidervalue or something that explains what u save.

                    You can use anything u like for company. Its also because its store in registry.
                    So just use some name u like that IS not a real company. :)

                    R Offline
                    R Offline
                    rapid84
                    wrote on last edited by
                    #13

                    @mrjj

                    For loading i use;

                     QSettings settings("settingName");
                        int  aValue=settings.value("aKey").toInt();
                        int  aValue2=settings.value("aKey2").toInt();
                        ui->dial->setValue(aValue);
                        ui->dial_2->setValue(aValue2);
                    

                    and for saving i use

                    QSettings settings("settingName");
                        int somevalue = ui->dial->value();
                        int somevalue2 = ui->dial_2->value();
                        settings.setValue("aKey",somevalue);
                        settings.setValue("aKey2",somevalue2);
                    

                    These work for me , thanks for help. by the way, in a debian OS , where do it save ( in which directory)?

                    1 Reply Last reply
                    1
                    • mrjjM Offline
                      mrjjM Offline
                      mrjj
                      Lifetime Qt Champion
                      wrote on last edited by
                      #14

                      Hi
                      That is good question :)
                      try
                      qDebug() << settings.fileName();

                      1 Reply Last reply
                      0
                      • mrjjM Offline
                        mrjjM Offline
                        mrjj
                        Lifetime Qt Champion
                        wrote on last edited by
                        #15

                        If I may suggest one improvement is to use a better name than
                        "aKey" and "aKey2"
                        Maybe Dial1Value and Dial2Value

                        R 1 Reply Last reply
                        0
                        • mrjjM mrjj

                          If I may suggest one improvement is to use a better name than
                          "aKey" and "aKey2"
                          Maybe Dial1Value and Dial2Value

                          R Offline
                          R Offline
                          rapid84
                          wrote on last edited by rapid84
                          #16

                          @mrjj

                          when i click the close button, while it is saving data , it waits sometime and close with a 1-2 seconds delay. Is this normal ?

                          mrjjM 1 Reply Last reply
                          0
                          • R rapid84

                            @mrjj

                            when i click the close button, while it is saving data , it waits sometime and close with a 1-2 seconds delay. Is this normal ?

                            mrjjM Offline
                            mrjjM Offline
                            mrjj
                            Lifetime Qt Champion
                            wrote on last edited by
                            #17

                            @rapid84
                            Normally it saves really fast so i never noticed it.

                            R 1 Reply Last reply
                            0
                            • mrjjM mrjj

                              @rapid84
                              Normally it saves really fast so i never noticed it.

                              R Offline
                              R Offline
                              rapid84
                              wrote on last edited by
                              #18

                              @mrjj
                              on raspbian sometimes it takes up to 5 -6 seconds to store the data. i have tested it, maybe i will need to use QFile.

                              mrjjM 1 Reply Last reply
                              0
                              • R rapid84

                                @mrjj
                                on raspbian sometimes it takes up to 5 -6 seconds to store the data. i have tested it, maybe i will need to use QFile.

                                mrjjM Offline
                                mrjjM Offline
                                mrjj
                                Lifetime Qt Champion
                                wrote on last edited by
                                #19

                                @rapid84
                                ok. thats pretty long.
                                It must have a reason.
                                QFile should be faster.

                                1 Reply Last reply
                                0
                                • SGaistS Offline
                                  SGaistS Offline
                                  SGaist
                                  Lifetime Qt Champion
                                  wrote on last edited by
                                  #20

                                  Hi,

                                  You shouldn't need to but you can try adding a call to sync in order to flush the content of your settings to the disk.

                                  Interested in AI ? www.idiap.ch
                                  Please read the Qt Code of Conduct - https://forum.qt.io/topic/113070/qt-code-of-conduct

                                  1 Reply Last reply
                                  0
                                  • R Offline
                                    R Offline
                                    rapid84
                                    wrote on last edited by
                                    #21

                                    @mrjj @SGaist
                                    hi
                                    i am using QFile now and it works clearly for me. Thanks.

                                    1 Reply Last reply
                                    0

                                    • Login

                                    • Login or register to search.
                                    • First post
                                      Last post
                                    0
                                    • Categories
                                    • Recent
                                    • Tags
                                    • Popular
                                    • Users
                                    • Groups
                                    • Search
                                    • Get Qt Extensions
                                    • Unsolved