0
votes

The following quote is from this link: http://doc.qt.io/qt-5/qwidget.html#setLayout

If there already is a layout manager installed on this widget, QWidget won't let you install another. You must first delete the existing layout manager (returned by layout()) before you can call setLayout() with the new layout.

Question 1: What does it mean when you say is "layout manager is installed on this widget"?

Question 2: This link: http://doc.qt.io/qt-5/layout.html shows that there are various forms of layouts like: Horizontal, Vertical, Form Layouts. Grid layout can alone be used to arrange the widgets in the forms supported by other three layouts. Is there any special use of the other three layouts?

1

1 Answers

2
votes

A layout is "installed" in a widget when you set it as the widget's layout with setLayout. That's all it means.

As for what layouts to use: use the simplest layout that does the job you want. Use nesting (you can add a layout to another layout) to make more complex designs. A grid is not necessarily the easiest to use - you'll soon find yourself with headaches about widgets needing to span multiple rows/columns, spacing difficulties etc... if use a single grid as your layout.