Flow Layout Manager (PRIM_FWLM)

Flow Layout Manager

Ancestors - Base Layout Manager (PRIM_DTVW) Object (PRIM_OBJT)

Details

The Flow Layout Manager is used to position components in a display area by dividing the items into rows or columns and then flowing the items one after the other in the appropriate row/column.
 
The division into rows or columns is controlled by the Direction property and the number of rows/columns is controlled by the ItemsPerDivision property.

Example

Simple form using a flow layout to control the relative positions of controls.
Function Options(*DIRECT)
Begin_Com Role(*EXTENDS #PRIM_FORM) Clientwidth(454) Clientheight(140) Componentversion(2) Top(227) Left(199) Layoutmanager(#FlowLayout1)
 
   Define_Com Class(#PRIM_FWLM) Name(#FlowLayout1) Direction(TopToBottom)
   Define_Com Class(#PRIM_FWLI) Name(#FlowLayoutItem1) Manage(#Button1) Parent(#FlowLayout1)
   Define_Com Class(#PRIM_FWLI) Name(#FlowLayoutItem2) Manage(#Button2) Parent(#FlowLayout1)
   Define_Com Class(#PRIM_FWLI) Name(#FlowLayoutItem3) Manage(#Button3) Parent(#FlowLayout1)
   Define_Com Class(#PRIM_FWLI) Name(#FlowLayoutItem4) Manage(#Button4) Parent(#FlowLayout1)
   Define_Com Class(#PRIM_FWLI) Name(#FlowLayoutItem5) Manage(#Button5) Parent(#FlowLayout1)
   Define_Com Class(#PRIM_FWLI) Name(#FlowLayoutItem6) Manage(#Button6) Parent(#FlowLayout1)
   Define_Com Class(#PRIM_FWLI) Name(#FlowLayoutItem7) Manage(#Button7) Parent(#FlowLayout1)
   Define_Com Class(#PRIM_FWLI) Name(#FlowLayoutItem8) Manage(#Button8) Parent(#FlowLayout1)
   Define_Com Class(#PRIM_FWLI) Name(#FlowLayoutItem9) Manage(#Button9) Parent(#FlowLayout1)
   Define_Com Class(#PRIM_FWLI) Name(#FlowLayoutItem10) Manage(#Button10) Parent(#FlowLayout1)
 
   Define_Com Class(#PRIM_PHBN) Name(#Button1) Caption('Button1') Displayposition(1) Left(0) Parent(#COM_OWNER) Tabposition(1) Top(0)
   Define_Com Class(#PRIM_PHBN) Name(#Button2) Caption('Button2') Displayposition(2) Left(0) Parent(#COM_OWNER) Tabposition(2) Top(35)
   Define_Com Class(#PRIM_PHBN) Name(#Button3) Caption('Button3') Displayposition(3) Left(0) Parent(#COM_OWNER) Tabposition(3) Top(70)
   Define_Com Class(#PRIM_PHBN) Name(#Button4) Caption('Button4') Displayposition(4) Left(0) Parent(#COM_OWNER) Tabposition(4) Top(105)
   Define_Com Class(#PRIM_PHBN) Name(#Button5) Caption('Button5') Displayposition(5) Left(90) Parent(#COM_OWNER) Tabposition(5) Top(0)
   Define_Com Class(#PRIM_PHBN) Name(#Button6) Caption('Button6') Displayposition(6) Left(90) Parent(#COM_OWNER) Tabposition(6) Top(35)
   Define_Com Class(#PRIM_PHBN) Name(#Button7) Caption('Button7') Displayposition(7) Left(90) Parent(#COM_OWNER) Tabposition(7) Top(70)
   Define_Com Class(#PRIM_PHBN) Name(#Button8) Caption('Button8') Displayposition(8) Left(90) Parent(#COM_OWNER) Tabposition(8) Top(105)
   Define_Com Class(#PRIM_PHBN) Name(#Button9) Caption('Button9') Displayposition(9) Left(180) Parent(#COM_OWNER) Tabposition(9) Top(0)
   Define_Com Class(#PRIM_PHBN) Name(#Button10) Caption('Button10') Displayposition(10) Left(180) Parent(#COM_OWNER) Tabposition(10) Top(35)
 
End_Com

Properties

NameDescription
ComponentClassNameComponentClassName is the name of the component's class. Inherited from Object (PRIM_OBJT)
ComponentMembersComponentMembers provides access to all the member components of this component Inherited from Object (PRIM_OBJT)
ComponentPatternNameComponentPatternName is used to qualify the class of the component. Inherited from Object (PRIM_OBJT)
ComponentTagGeneric space allowing a value to be stored for the instance Inherited from Object (PRIM_OBJT)
ComponentTypeComponentType gives you access to the type information about the component Inherited from Object (PRIM_OBJT)
ComponentTypeNameComponentTypeName is the fully qualified name of the component's class. Inherited from Object (PRIM_OBJT)
DirectionDefines the direction of flow management
FlowOperationDefines the flow operation used to flow the rows/columns
FlowOperationHorDefines the horizontal flow operation for components in a row or column
FlowOperationVerDefines the vertical flow operation for components in a row or column
ItemsPerDivisionDefines the number of items to position in each row/column
MarginBottomBottom margin in pixels
MarginLeftLeft margin in pixels
MarginRightRight margin in pixels
MarginTopTop margin in pixels
MaxColumnsMaximum number of columns allowed in the layout
MaxHeightMaximum height of the control when the container is resized Inherited from Base Layout Manager (PRIM_DTVW)
MaxRowsMaximum number of rows allowed in the layout
MaxWidthMaximum width of the control when the container is resized Inherited from Base Layout Manager (PRIM_DTVW)
MinColumnsMinimum number of columns allowed in the layout
MinHeightMinimum height of the control when the container is resized Inherited from Base Layout Manager (PRIM_DTVW)
MinRowsMinimum number of columns allowed in the layout
MinWidthMinimum width of the control when the container is resized Inherited from Base Layout Manager (PRIM_DTVW)
NameName identifies the component Inherited from Object (PRIM_OBJT)
OwnerOwner owns this component Inherited from Object (PRIM_OBJT)
ParentThe component instance to which this instance is attached. The visual container for a control or the collector of a set of child instances Inherited from Object (PRIM_OBJT)
SizingDetermines how the layout manager will behave within the composite control it manages Inherited from Base Layout Manager (PRIM_DTVW)
SizingRuleHorDefines horizontal sizing rule for a control within the cell
SizingRuleVerDefines vertical sizing rule for a control within the cell
SpacingDefines spacing between rows or columns
SpacingItemsDefines spacing between items in a row or column

Events

NameDescription
CreateInstanceCreateInstance is signalled when an instance of a component is created Inherited from Flow Layout Manager (PRIM_FWLM)
DestroyInstanceDestroyInstance is signalled when an instance of a component is about to be destroyed Inherited from Flow Layout Manager (PRIM_FWLM)

See also

All Component Classes

Technical Reference

Febuary 18 V14SP2