Table Layout Manager

What is a Table Layout?

Table Layout is a fully integrated design and runtime feature that reduces the complexity of user interface design and runtime resizing to little more than a simple drag and drop process. In short, it is an integral part of the development process, and one of the most important features in Visual LANSA.

Table Layouts divide a composite control such as a WebPage, Form or Panel in to rows and columns. Controls can then be placed in the resulting cells, with span, alignment, size and flow attributes determining how big the controls are, where they're positioned and how they react to other control in the same cell.

Rows, columns, while still component instances, are not physical controls in the same sense as a panel. Instead, they provide defined left and top positions within the space so that specific controls can be placed at specific positions. When the control using a layout changes size, the layout will evaluate the size and position of all managed controls based on the new parent size.

It is strongly recommended that developers take the time to familiarise themselves with the features of Table Layouts and to understand as much about the detail as they possibly can.  Effective use of Table Layouts can save many, many hours of development and significantly simplify maintenance.

Why do I need Table Layout?

Layouts solve two basic problems.

The primary use of a table layout is to govern the size and position of controls at runtime, and specifically when the webpage or form is resized. Without a layout, the controls on a page will simply stay precisely where they're placed and will not resize to suit the size of their container.

Of course, not all controls need to be under layout management. If they are not required to resize or move in anyway, there is no need to make them part of the layout.

The second is that layouts simplify the positioning of controls on the screen, making it easier to ensure consistent positioning during the design phase.  Once used, if there are no runtime resizing requirements, the layout can be deleted if required.

Worthy of note here is that there is a negligible overhead for keeping a layout.

To learn more, continue to: Table Definition.