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 2.2k 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 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 Offline
    J.HilkJ Offline
    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 Offline
            J.HilkJ Offline
            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 Offline
                J.HilkJ Offline
                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 Offline
                    J.HilkJ Offline
                    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