Qt - How to control the widget sizes in QLayout

后端 未结 4 914
名媛妹妹
名媛妹妹 2021-01-15 08:12

I am trying to put some spinboxes,line edits in a layout. But the size extends more than the neccesity. Below is the figure

相关标签:
4条回答
  • 2021-01-15 08:51

    It's easy. It can be done by giving the stretching factor. That means you have to initiate the value when you use the functions

    addWidget(widget,stretchfactor);
           or
    addLayout(layout,stretchfactor);
    
    0 讨论(0)
  • 2021-01-15 08:51

    I think you should try with void setSizeConstraint ( SizeConstraint ) and minimumSize() inherited methods.

    Read the doc

    0 讨论(0)
  • 2021-01-15 08:54

    In my opinion, working with stretch factors is not the right solution, here. It's a bit "hackish". Stretch factors are useful e.g. when you have two widgets that both use as much space as possible, but not at a 50:50 rate.

    Here, as I see it, you have two widgets (or groups of widgets), where one should only use as much space as it really needs and the other one should take the rest. That is what size policies are for. Set the horizontal policy of the left one to Expanding (or MinimumExpanding if you want to prevent scroll bars) and the right one to Preferred.

    0 讨论(0)
  • 2021-01-15 08:57

    Take a look at QSizePolicy. It may be usefull.

    0 讨论(0)
提交回复
热议问题