Qt Forum

    • Login
    • Search
    • Categories
    • Recent
    • Tags
    • Popular
    • Users
    • Groups
    • Search
    • Unsolved

    Unsolved remove space around qToolButton

    General and Desktop
    3
    19
    731
    Loading More Posts
    • 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.
    • J
      jkwok678 last edited by

      How could I remove the border around the qToolbutton? Is there another way apart from using stylesheets?
      buttonBorder.png

      1 Reply Last reply Reply Quote 0
      • mrjj
        mrjj Lifetime Qt Champion last edited by mrjj

        Hi
        if you set widget size to the same as icon size then it covers all of the button ( minus 1 pixel for the hover effect)

        alt text

        1 Reply Last reply Reply Quote 1
        • J
          jkwok678 last edited by

          Is that done in the designer? I've been hand-coding it so far, and the only methods I've seen is set Max & Min height & width.

          mrjj 1 Reply Last reply Reply Quote 0
          • mrjj
            mrjj Lifetime Qt Champion @jkwok678 last edited by

            @jkwok678
            Hi
            Yes 100% Designer.
            Just properties.

            1 Reply Last reply Reply Quote 0
            • J
              jkwok678 last edited by

              Is there a way to replicate this in code ?

              mrjj 1 Reply Last reply Reply Quote 0
              • mrjj
                mrjj Lifetime Qt Champion @jkwok678 last edited by

                @jkwok678

                yes. open setupUI() you see in mainwindow constructor.
                You can press F2 on the name to go there
                then you can take the code.

                1 Reply Last reply Reply Quote 0
                • B
                  Bonnie last edited by

                  @jkwok678 I'm not sure about this, but does setAutoRaise(true) act as you expected?

                  J 1 Reply Last reply Reply Quote 1
                  • J
                    jkwok678 last edited by

                    @mrjj
                    Ah, I think you misinterpreted what I mean, I've hand coded all the buttons and didn't use a ui file.
                    So I want to try replicate your button that i saw in the image using code.

                    mrjj 1 Reply Last reply Reply Quote 0
                    • mrjj
                      mrjj Lifetime Qt Champion @jkwok678 last edited by

                      @jkwok678
                      Yes i fairly sure i did :)
                      its
                      button1->setFixedSize(100,100);
                      button1->setIconSize(QSize(100, 100));

                      for 100x100 icon / button

                      J 1 Reply Last reply Reply Quote 0
                      • J
                        jkwok678 @Bonnie last edited by

                        @Bonnie
                        Thanks for the suggestion, it works in a way, but once the button is highlighted you can still see the border around the QIcon in the QToolButton. So the size of the button is still the same, I was hoping to shrink the size of the button, to being much closer to the size of the QIcon which is 16x16. I would prefer to have maybe 1/2 pixel border around the button. But also allow the button to expand if the screen resolution/ screen size is high.

                        mrjj 1 Reply Last reply Reply Quote 0
                        • mrjj
                          mrjj Lifetime Qt Champion @jkwok678 last edited by

                          @jkwok678 said in remove space around qToolButton:

                          But also allow the button to expand if the screen resolution/ screen size is high.

                          Ok then DONT use setFixedSize to set size but just the normal ones

                          1 Reply Last reply Reply Quote 0
                          • J
                            jkwok678 @mrjj last edited by

                            @mrjj
                            With this implementation is the setFixedSize more of a default/intitial size?
                            So when I have code that allows the button to resize, it can still do so?

                            mrjj 1 Reply Last reply Reply Quote 0
                            • mrjj
                              mrjj Lifetime Qt Champion @jkwok678 last edited by

                              @jkwok678 said in remove space around qToolButton:

                              setFixedSize

                              Will set to a fixed size so nope, it wont resize then
                              so dont use it if you want toolbuttons to grow

                              1 Reply Last reply Reply Quote 0
                              • J
                                jkwok678 last edited by

                                What's the normal ones? I don't see just a set Size function in the documentation.

                                mrjj 1 Reply Last reply Reply Quote 0
                                • mrjj
                                  mrjj Lifetime Qt Champion @jkwok678 last edited by

                                  @jkwok678

                                  Hi
                                  setGeometry and
                                  resize

                                  but if you put them in layout anyway, its pointless as then they scale and
                                  icon gets border again since now iconSize is not matching anymore.

                                  1 Reply Last reply Reply Quote 1
                                  • J
                                    jkwok678 last edited by

                                    So, what could I do to have the button have the same size as the QIcon, or at least just less blank space?

                                    mrjj 1 Reply Last reply Reply Quote 0
                                    • mrjj
                                      mrjj Lifetime Qt Champion @jkwok678 last edited by

                                      @jkwok678
                                      well
                                      button1->setFixedSize(100,100);
                                      button1->setIconSize(QSize(100, 100));
                                      set button to 100x100 and same with icon.
                                      botton stay that size.

                                      1 Reply Last reply Reply Quote 1
                                      • J
                                        jkwok678 last edited by

                                        Would it be able to do that and also expand?As in when the button expands the Icon could expand as well? Or perhaps switch to a different Icon that us higher resolution?

                                        mrjj 1 Reply Last reply Reply Quote 0
                                        • mrjj
                                          mrjj Lifetime Qt Champion @jkwok678 last edited by mrjj

                                          Hi
                                          Sadly no.
                                          If you want such things, make a custom button that does it.

                                          However, Qt has support for HIRES displays that do scaling etc.
                                          and QIcon can have hires version to be used on such displays
                                          https://doc.qt.io/qt-5/highdpi.html

                                          but this has nothing to do with you want icon to cover all of the button at all times :)
                                          That is not a hires thing, in my opinion :)

                                          here is example of custom button
                                          https://stackoverflow.com/questions/31742194/dynamically-resize-qicon-without-calling-setsizeicon

                                          It scales the cion to fit at any given time.
                                          As you can see its not much code.

                                          1 Reply Last reply Reply Quote 0
                                          • First post
                                            Last post