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. Child Layouts not getting added Properly
Forum Updated to NodeBB v4.3 + New Features

Child Layouts not getting added Properly

Scheduled Pinned Locked Moved Solved General and Desktop
15 Posts 4 Posters 1.7k Views 1 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.
  • A Offline
    A Offline
    Adit
    wrote on last edited by Adit
    #5

    Guys , here my MainWindow is not a QMainWindow,instead ,it inherits from QWidget.Moreover I dont use the .ui form and I create the UI dynamically.

    J.HilkJ 1 Reply Last reply
    0
    • A Adit

      Guys , here my MainWindow is not a QMainWindow,instead ,it inherits from QWidget.Moreover I dont use the .ui form and I create the UI dynamically.

      J.HilkJ Online
      J.HilkJ Online
      J.Hilk
      Moderators
      wrote on last edited by
      #6

      @Adit
      what's the ui-pointer for than?

      MainWindow::MainWindow(QWidget *parent) :
      QWidget(parent),
      ui(new Ui::MainWindow)
      {


      Be aware of the Qt Code of Conduct, when posting : https://forum.qt.io/topic/113070/qt-code-of-conduct


      Q: What's that?
      A: It's blue light.
      Q: What does it do?
      A: It turns blue.

      1 Reply Last reply
      0
      • A Offline
        A Offline
        Adit
        wrote on last edited by
        #7

        Sorry @J-Hilk ,but Im not using it .I tried to add both setMinimumHeight and setMaximumHeight and it works now.Could you tell me when these two functions should be used?

        jsulmJ 1 Reply Last reply
        0
        • A Adit

          Sorry @J-Hilk ,but Im not using it .I tried to add both setMinimumHeight and setMaximumHeight and it works now.Could you tell me when these two functions should be used?

          jsulmJ Offline
          jsulmJ Offline
          jsulm
          Lifetime Qt Champion
          wrote on last edited by
          #8

          @Adit What about http://doc.qt.io/qt-5/qwidget.html#setLayout ?
          You created a layout (parentLayout), but you did not tell your MainWindow widget to use it.

          https://forum.qt.io/topic/113070/qt-code-of-conduct

          1 Reply Last reply
          0
          • A Offline
            A Offline
            Adit
            wrote on last edited by
            #9

            But I have set the MainWindow widget as parent to the Top-Layout created and it works!

            J.HilkJ 1 Reply Last reply
            0
            • A Adit

              But I have set the MainWindow widget as parent to the Top-Layout created and it works!

              J.HilkJ Online
              J.HilkJ Online
              J.Hilk
              Moderators
              wrote on last edited by
              #10

              @Adit
              It gets a bit tricky when you add Layouts to Layouts.

              it should also work, if you specify strechfactors for the addes layouts e.g

              parentLayout->setStretch(0,1);
              parentLayout->setStretch(1,1);
              parentLayout->setStretch(2,1);
              

              Be aware of the Qt Code of Conduct, when posting : https://forum.qt.io/topic/113070/qt-code-of-conduct


              Q: What's that?
              A: It's blue light.
              Q: What does it do?
              A: It turns blue.

              1 Reply Last reply
              0
              • A Offline
                A Offline
                Adit
                wrote on last edited by
                #11

                I guess stretch factors can be 0 or 1 (contract and expand) right?What if we have multiple Layouts of specific sizes ?

                J.HilkJ 1 Reply Last reply
                0
                • A Adit

                  I guess stretch factors can be 0 or 1 (contract and expand) right?What if we have multiple Layouts of specific sizes ?

                  J.HilkJ Online
                  J.HilkJ Online
                  J.Hilk
                  Moderators
                  wrote on last edited by
                  #12

                  @Adit said in Child Layouts not getting added Properly:

                  I guess stretch factors can be 0 or 1 (contract and expand) right?What if we have multiple Layouts of specific sizes ?

                  no, 0 means, take as much space, as possible, defined by the sizepolicy and sizehint of the Widget/Layout

                  in this case a stretch factor of 1 for each element results in the following space for the layouts, 1/3, 1/3 and 1/3.

                  With for example

                  parentLayout->setStretch(0,1);
                  parentLayout->setStretch(1,1);
                  parentLayout->setStretch(2,2);
                  

                  the layouts take up 1/4, 1/4, 1/2 of the available space.


                  Be aware of the Qt Code of Conduct, when posting : https://forum.qt.io/topic/113070/qt-code-of-conduct


                  Q: What's that?
                  A: It's blue light.
                  Q: What does it do?
                  A: It turns blue.

                  1 Reply Last reply
                  0
                  • A Offline
                    A Offline
                    Adit
                    wrote on last edited by
                    #13

                    If we are using this setStretch() method, then can we use setMaximumWidth() and setMaximumHeight() methods?

                    J.HilkJ 1 Reply Last reply
                    0
                    • A Adit

                      If we are using this setStretch() method, then can we use setMaximumWidth() and setMaximumHeight() methods?

                      J.HilkJ Online
                      J.HilkJ Online
                      J.Hilk
                      Moderators
                      wrote on last edited by
                      #14

                      @Adit yes, the stretch is applied until min and max sizes are hit and as long as no contradicting QSizePolizies are set (like fixed size)


                      Be aware of the Qt Code of Conduct, when posting : https://forum.qt.io/topic/113070/qt-code-of-conduct


                      Q: What's that?
                      A: It's blue light.
                      Q: What does it do?
                      A: It turns blue.

                      1 Reply Last reply
                      1
                      • A Offline
                        A Offline
                        Adit
                        wrote on last edited by
                        #15

                        Could you suggest me some idea to build a complex layout(i.e sublayouts of varying sizes)?Could you suggest me an opensource project for building a resolution independent UI.

                        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