A layout is a collection of widgets and associated attribute settings. These attribute settings determine how the layout appears when you run the application. Each layout has a name and, depending on the type of layout, an associated run-time expression.
At design time, a layout displays in the design window. When you switch between layouts in the design window, the AppBuilder alters the appearance of the design window to match the characteristics of the new layout.
You can also use AppBuilder to support multiple layouts in a single procedure file. The advantage of this approach is that you continue to maintain and deploy only one set of source files for an application. When you run a procedure file that contains multiple layouts, the procedure file adjusts its interface to suit the current run-time environment. You can also easily switch between layouts at run time.
For example, you might have an application that produces address labels. However, address formats vary from region to region. So, you should have a different layout for each address format.
For more information on multiple layouts, see OpenEdge Development: AppBuilder.