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

Name

Description

ComponentClassName

ComponentClassName is the name of the component's class. Inherited from Object (PRIM_OBJT)

ComponentMembers

ComponentMembers provides access to all the member components of this component Inherited from Object (PRIM_OBJT)

ComponentPatternName

ComponentPatternName is used to qualify the class of the component. Inherited from Object (PRIM_OBJT)

ComponentTag

Generic space allowing a value to be stored for the instance Inherited from Object (PRIM_OBJT)

ComponentType

ComponentType gives you access to the type information about the component Inherited from Object (PRIM_OBJT)

ComponentTypeName

ComponentTypeName is the fully qualified name of the component's class. Inherited from Object (PRIM_OBJT)

Direction

Defines the direction of flow management

FlowOperation

Defines the flow operation used to flow the rows/columns

FlowOperationHor

Defines the horizontal flow operation for components in a row or column

FlowOperationVer

Defines the vertical flow operation for components in a row or column

ItemsPerDivision

Defines the number of items to position in each row/column

MarginBottom

Bottom margin in pixels

MarginLeft

Left margin in pixels

MarginRight

Right margin in pixels

MarginTop

Top margin in pixels

MaxColumns

Maximum number of columns allowed in the layout

MaxHeight

Maximum height of the control when the container is resized Inherited from Base Layout Manager (PRIM_DTVW)

MaxRows

Maximum number of rows allowed in the layout

MaxWidth

Maximum width of the control when the container is resized Inherited from Base Layout Manager (PRIM_DTVW)

MinColumns

Minimum number of columns allowed in the layout

MinHeight

Minimum height of the control when the container is resized Inherited from Base Layout Manager (PRIM_DTVW)

MinRows

Minimum number of columns allowed in the layout

MinWidth

Minimum width of the control when the container is resized Inherited from Base Layout Manager (PRIM_DTVW)

Name

Name identifies the component Inherited from Object (PRIM_OBJT)

Owner

Owner owns this component Inherited from Object (PRIM_OBJT)

Parent

The 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)

Sizing

Determines how the layout manager will behave within the composite control it manages Inherited from Base Layout Manager (PRIM_DTVW)

SizingRuleHor

Defines horizontal sizing rule for a control within the cell

SizingRuleVer

Defines vertical sizing rule for a control within the cell

Spacing

Defines spacing between rows or columns

SpacingItems

Defines spacing between items in a row or column

Events

Name

Description

CreateInstance

CreateInstance is signalled when an instance of a component is created Inherited from Flow Layout Manager (PRIM_FWLM)

DestroyInstance

DestroyInstance 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

  • No labels