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. setting QT_DEVICE_PIXEL_RATIO for a specific application

setting QT_DEVICE_PIXEL_RATIO for a specific application

Scheduled Pinned Locked Moved General and Desktop
20 Posts 4 Posters 15.1k 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.
  • SGaistS Offline
    SGaistS Offline
    SGaist
    Lifetime Qt Champion
    wrote on last edited by
    #6

    Which version of Qt are you using ?

    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
    • F Offline
      F Offline
      floatingWoods
      wrote on last edited by
      #7

      I am using Qt 5.5

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

        As a workaround you could try calling qsetenv before instantiating your QApplication

        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
        1
        • F Offline
          F Offline
          floatingWoods
          wrote on last edited by
          #9

          Thanks again!

          This works on Windows:

          qputenv("QT_DEVICE_PIXEL_RATIO",QByteArray("2"));
          

          Any similar functionality for Linux (and optionally Mac, but as far as I have tested it, Mac always recognizes high dpi displays)?

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

            qputenv works also on OS X and Linux. IIRC yes OS X already handles that

            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
            1
            • F Offline
              F Offline
              floatingWoods
              wrote on last edited by
              #11

              Excellent, you are right, that also works on Linux.
              Thanks a lot!

              1 Reply Last reply
              0
              • F floatingWoods

                Hello,

                under Windows 8.1, I can force the pixel ratio by setting the system's environmnent variable QT_DEVICE_PIXEL_RATIO.
                This is however applied to all my Qt applications.
                Is it possible to set that variable specifically to one application?
                I read about qt.conf file, but I am not sure what I have to put in there. e.g.

                [Environment]
                setx QT_DEVICE_PIXEL_RATIO 2
                

                But that has no effect. The qt.conf file is located in the same folder as my application's executable.

                S Offline
                S Offline
                soudi00
                wrote on last edited by
                #12

                @floatingWoods

                Hi, I need to change the QT_DEVICE_PIXEL_RATIO to "auto" in windows 10.

                I'm not a software developer and I have no idea how to do this I really appreciate if you can help me with this.

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

                  Hi and welcome to devnet,

                  If it's to test your application while using Qt Creator: go to the run part of the Project panel. There you can edit the environment variables. Add a new variable with the name QT_DEVICE_PIXEL_RATIO and in value write auto.

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

                  N 1 Reply Last reply
                  0
                  • SGaistS SGaist

                    Hi and welcome to devnet,

                    If it's to test your application while using Qt Creator: go to the run part of the Project panel. There you can edit the environment variables. Add a new variable with the name QT_DEVICE_PIXEL_RATIO and in value write auto.

                    N Offline
                    N Offline
                    nikit
                    wrote on last edited by
                    #14

                    @SGaist said:

                    QT_DEVICE_PIXEL_RATIO

                    Hi,
                    I did set the variable to AUTO as you mentioned.
                    My app run fines on 1366768 screen resolution size. But if I keep my screen resolution to 1024768, UI gets cut. (cannot see buttons of my UI app).
                    What would be the probable way to fix my app to all resolution of screen?

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

                      Are you using layouts to handle your widgets ?

                      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
                      • N Offline
                        N Offline
                        nikit
                        wrote on last edited by
                        #16

                        Yes I am using Layouts.

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

                          If your application needs a minimal size then you can put your main widget in a QScrollArea. That way if your application doesn't fit, you'll have scroll bars to move up/down to access the rest of your UI.

                          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
                          • N Offline
                            N Offline
                            nikit
                            wrote on last edited by
                            #18

                            Thank you.
                            Guess this is the last option to add Scroll in my app to support low end resolution screens

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

                              Not really a last option. If the design of your UI is big enough to not fit some screen resolution you can either change the design to fit a larger set of screen resolution. or make it more modular under a certain size. A scrolling area is not a bad solution otherwise how would you browse internet ?

                              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
                              • N Offline
                                N Offline
                                nikit
                                wrote on last edited by
                                #20

                                Yeah true. Well my app gets cut in low end resolution (1024*764). On large screen resolution its fine.

                                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