Menu bar
Ancestors - Container (PRIM_CPST) Control (PRIM_CTRL) Object (PRIM_OBJT)
A Menu Bar is the starting point when constructing a menu system for an application. An item can be added to the menu by dropping a Menu Item, Popup Menu or Popup Panel. A Menu Bar can placed anywhere on the page and is sized manually or by using a Layout Manager. Menus will automatically change to a drop menu if there is not enough room to show all the items. The CollapseStyle property is used to configure this behavior.
This example shows a menu bar with submenus with a further nested menu and a popup panel onthe fourth menu item. Construction of menus is easily managed in the designer. This code is provided for reference purposes.
Begin_Com Role(*EXTENDS #PRIM_WEB) Layoutmanager(#TableLayout1) Define_Com Class(#PRIM_TBLO) Name(#TableLayout1) Define_Com Class(#PRIM_TBLO.Column) Name(#Column1) Displayposition(1) Parent(#TableLayout1) Define_Com Class(#PRIM_TBLO.Row) Name(#Row1) Displayposition(1) Parent(#TableLayout1) Height(0.22) Define_Com Class(#PRIM_TBLO.Row) Name(#Row2) Displayposition(2) Parent(#TableLayout1) Height(0.16) Define_Com Class(#PRIM_TBLO.Row) Name(#Row3) Displayposition(3) Parent(#TableLayout1) Height(2.62) Define_Com Class(#PRIM_TBLO.Item) Name(#LayoutItem1) Alignment(TopLeft) Column(#Column1) Flow(Down) Manage(#Label1) Parent(#TableLayout1) Row(#Row1) Define_Com Class(#PRIM_TBLO.Item) Name(#MenuBar1Item1) Column(#Column1) Manage(#MenuBar1) Parent(#TableLayout1) Row(#Row2) Margintop(2) Marginbottom(2) Marginleft(2) Marginright(2) Define_Com Class(#PRIM_PPNL.MenuBar) Name(#MenuBar1) Displayposition(1) Parent(#COM_OWNER) Tabposition(1) Tabstop(False) Top(61) Width(1196) Height(39) Left(2) Define_Com Class(#PRIM_PPNL.MenuItem) Name(#MenuItem1) Caption('MenuItem1') Displayposition(1) Height(39) Menupopup(#PopupMenu1) Parent(#MenuBar1) Tabposition(1) Tabstop(False) Define_Com Class(#PRIM_PPNL.MenuItem) Name(#MenuItem2) Caption('MenuItem2') Displayposition(2) Height(39) Left(100) Menupopup(#PopupMenu2) Parent(#MenuBar1) Tabposition(2) Tabstop(False) Define_Com Class(#PRIM_PPNL.Menu) Name(#PopupMenu1) Left(2) Top(100) Height(53) Define_Com Class(#PRIM_PPNL.MenuItem) Name(#MenuItem3) Caption('MenuItem1') Displayposition(1) Parent(#PopupMenu1) Tabposition(1) Tabstop(False) Width(148) Define_Com Class(#PRIM_PPNL.MenuItem) Name(#MenuItem4) Caption('MenuItem2') Displayposition(2) Parent(#PopupMenu1) Tabposition(2) Tabstop(False) Top(25) Width(148) Define_Com Class(#PRIM_PPNL.Menu) Name(#PopupMenu2) Left(102) Top(100) Height(101) Define_Com Class(#PRIM_PPNL.MenuItem) Name(#MenuItem5) Caption('MenuItem1') Displayposition(1) Parent(#PopupMenu2) Tabposition(1) Tabstop(False) Width(148) Define_Com Class(#PRIM_PPNL.MenuItem) Name(#MenuItem6) Caption('MenuItem2') Displayposition(2) Parent(#PopupMenu2) Tabposition(4) Tabstop(False) Top(25) Width(148) Define_Com Class(#PRIM_PPNL.MenuItem) Name(#MenuItem7) Caption('MenuItem3') Displayposition(3) Height(39) Left(200) Menupopup(#PopupMenu3) Parent(#MenuBar1) Tabposition(3) Tabstop(False) Define_Com Class(#PRIM_PPNL.Menu) Name(#PopupMenu3) Left(202) Top(100) Height(53) Define_Com Class(#PRIM_PPNL.MenuItem) Name(#MenuItem8) Caption('MenuItem1') Displayposition(1) Parent(#PopupMenu3) Tabposition(1) Tabstop(False) Width(148) Define_Com Class(#PRIM_PPNL.MenuItem) Name(#MenuItem9) Caption('MenuItem2') Displayposition(2) Parent(#PopupMenu3) Tabposition(2) Tabstop(False) Top(25) Width(148) Define_Com Class(#PRIM_PPNL.MenuItem) Name(#MenuItem11) Caption('MenuItem4') Displayposition(4) Height(39) Left(300) Menupopup(#Popup1) Parent(#MenuBar1) Tabposition(4) Tabstop(False) Define_Com Class(#PRIM_PPNL.Menu) Name(#PopupMenu4) Height(54) Left(251) Top(151) Define_Com Class(#PRIM_PPNL.MenuItem) Name(#MenuItem13) Caption('MenuItem1') Displayposition(1) Parent(#PopupMenu4) Tabposition(1) Tabstop(False) Width(148) Define_Com Class(#PRIM_PPNL.MenuItem) Name(#MenuItem14) Caption('MenuItem2') Displayposition(2) Parent(#PopupMenu4) Tabposition(2) Tabstop(False) Top(25) Width(148) Define_Com Class(#PRIM_PPNL) Name(#Popup1) Closeonclick(True) Left(302) Top(100) Height(173) Width(287) Define_Com Class(#PRIM_LABL) Name(#Label1) Caption('Heading') Displayposition(2) Ellipses(Word) Height(59) Left(0) Parent(#COM_OWNER) Tabposition(2) Tabstop(False) Top(0) Verticalalignment(Center) Width(1200) Marginleft(4) Themedrawstyle('Title+DarkTitle') Define_Com Class(#PRIM_LABL) Name(#Label2) Caption('Popup panels can show anything') Displayposition(1) Ellipses(Word) Height(149) Parent(#Popup1) Tabposition(1) Tabstop(False) Top(12) Verticalalignment(Center) Width(263) Left(8) Alignment(Center) Define_Com Class(#PRIM_PPNL.MenuItem) Name(#MenuItem10) Caption('MenuItem3') Displayposition(3) Parent(#PopupMenu2) Tabposition(3) Tabstop(False) Top(50) Width(148) Menupopup(#PopupMenu4) Define_Com Class(#PRIM_PPNL.MenuItem) Name(#MenuItem12) Caption('MenuItem4') Displayposition(4) Parent(#PopupMenu2) Tabposition(2) Tabstop(False) Top(75) Width(148) End_Com
Name | Description |
---|---|
BusyUpdates | BusyUpdates specifies how the control updates itself Inherited from Control (PRIM_CTRL) |
BusyUpdatesOfParent | BusyUpdatesOfParent specifies whether the parent controls updates Inherited from Control (PRIM_CTRL) |
CanFocus | CanFocus returns a value indicating whether the control can receive keyboard focus Inherited from Control (PRIM_CTRL) |
CollapsedMenuImage | Image to be displayed when the menu is collapsed |
CollapseStyle | Specifies how the menu will behave when there is insufficient space to show the items |
ComponentClassName | ComponentClassName is the name of the component's class. Inherited from Object (PRIM_OBJT) |
ComponentControls | ComponentControls is a collection of all the controls contained in this component. Inherited from Container (PRIM_CPST) |
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) |
Cursor | Cursor sets the cursor image Inherited from Control (PRIM_CTRL) |
DisplayPosition | DisplayPosition determines the order in which components are shown Inherited from Control (PRIM_CTRL) |
DragStyle | DragStyle determines how a component can be dragged Inherited from Control (PRIM_CTRL) |
EnableChildren | EnableChildren specifies if the parent sets the Enabled property of child components Inherited from Container (PRIM_CPST) |
Enabled | Enable activates/deactivates the component Inherited from Control (PRIM_CTRL) |
FixedPosition | Fix the control position so that it does not move if the parent is scrolled Inherited from Control (PRIM_CTRL) |
Focus | Focus tells whether the component has focus Inherited from Control (PRIM_CTRL) |
FocusedStyle | Reference to a style to be applied when the control is focus Inherited from Control (PRIM_CTRL) |
FocusedStyles | Collection of styles to be applied when the control is focus Inherited from Control (PRIM_CTRL) |
Handle | Returns the Windows handle in desktop applications Inherited from Control (PRIM_CTRL) |
Height | The height of the control in pixels Inherited from Control (PRIM_CTRL) |
Hint | Caption displayed when the mouse hovers over the control Inherited from Control (PRIM_CTRL) |
HintPopup | HintPopup allows a PopupPanel instance to be used instead of the default hint text box Inherited from Control (PRIM_CTRL) |
HintShow | Enabled or disable the appearance of hints Inherited from Control (PRIM_CTRL) |
HintShowOfParent | Delegate hints appearance to the parent control Inherited from Control (PRIM_CTRL) |
HintTitle | HintTitle defines the text shown at the top of the hint window in emphasized text Inherited from Control (PRIM_CTRL) |
IsAnimating | IsAnimating indicates that a control is currently being animated Inherited from Control (PRIM_CTRL) |
IsRealized | True if the control is currently realized Inherited from Control (PRIM_CTRL) |
Left | Position of the control relative to the left boundary of its parent Inherited from Control (PRIM_CTRL) |
Modified | Modified indicates that the contents of the component have changed Inherited from Control (PRIM_CTRL) |
MouseOver | MouseOver determines whether the mouse is directly over a control Inherited from Control (PRIM_CTRL) |
MouseOverPart | True if the cursor is within the bounds of a child component Inherited from Container (PRIM_CPST) |
MouseOverStyle | MouseOverStyle defines the style to be applied to a control when the mouse is over it Inherited from Control (PRIM_CTRL) |
MouseOverStyles | MouseOverStyles is a collection of styles to be applied to a control when the mouse is over it Inherited from Control (PRIM_CTRL) |
Name | Name identifies the component Inherited from Object (PRIM_OBJT) |
Opacity | Opacity denotes the appearance of a control in terms of its interaction with its background Inherited from Control (PRIM_CTRL) |
Owner | Owner owns this component Inherited from Object (PRIM_OBJT) |
Parent | Reference to the control in which this control is visually positioned Inherited from Control (PRIM_CTRL) |
Popup | Popup allows a PopupPanel instance to be used instead of the typical right click popup menu Inherited from Control (PRIM_CTRL) |
PopupMenu | Reference to a PopupMenu to be shown on a right click Inherited from Control (PRIM_CTRL) |
PrivateStyle | Style applied to the control but not inherited by child controls Inherited from Container (PRIM_CPST) |
PrivateStyles | Collection of styles applied to the control but not inherited by child controls Inherited from Container (PRIM_CPST) |
Rotation | Rotation allows a control to rotate a number of degrees about a given origin Inherited from Control (PRIM_CTRL) |
RotationOriginLeft | RotationOriginLeft defines the left coordinate of an imaginary point around which a control will rotate Inherited from Control (PRIM_CTRL) |
RotationOriginTop | RotationOriginTop defines the top coordinate of an imaginary point around which a control will rotate Inherited from Control (PRIM_CTRL) |
ScaleHeight | ScaleHeight is the percentage of the height to use in the visual appearance of a control Inherited from Control (PRIM_CTRL) |
ScaleOriginLeft | ScaleOriginLeft defines the left coordinate of an imaginary point from which a control will scale Inherited from Control (PRIM_CTRL) |
ScaleOriginTop | ScaleOriginTop defines the top coordinate of an imaginary point from which a control will scale Inherited from Control (PRIM_CTRL) |
ScaleWidth | ScaleWidth is the percentage of the width to use in the visual appearance of a control Inherited from Control (PRIM_CTRL) |
ScreenLeft | ScreenLeft sets the distance from the left of the screen Inherited from Control (PRIM_CTRL) |
ScreenTop | ScreenTop sets the distance from the top of the screen Inherited from Control (PRIM_CTRL) |
ScrollLeft | Left position of a horizontally scrolled child control relative to its parent control Inherited from Control (PRIM_CTRL) |
ScrollTop | Top position of a vertically scrolled child control relative to its parent control Inherited from Control (PRIM_CTRL) |
ShowOnHover | Specifies whether the menu whould be shown when the mouse hovers over the item |
SkewLeft | SkewLeft defines the angle at which to skew the control horizontally Inherited from Control (PRIM_CTRL) |
SkewOriginLeft | SkewOriginLeft defines the left coordinate of an imaginary point from which a control will skew Inherited from Control (PRIM_CTRL) |
SkewOriginTop | SkewOriginTop defines the top coordinate of an imaginary point from which a control will skew Inherited from Control (PRIM_CTRL) |
SkewTop | SkewTop defines the angle at which to skew the control vertically Inherited from Control (PRIM_CTRL) |
Style | Style defines the style to be applied to a control Inherited from Control (PRIM_CTRL) |
Styles | Collection of styles to be applied to the control Inherited from Control (PRIM_CTRL) |
TabPosition | TabPosition sets the order of focus when the Tab key is used Inherited from Control (PRIM_CTRL) |
TabStop | Set to false to stop focus being given to the control via the Tab key Inherited from Control (PRIM_CTRL) |
ThemeDrawStyle | Name of the Theme DrawStyle to be applied to the control Inherited from Control (PRIM_CTRL) |
Top | Position of the control relative to the top boundary of its parent Inherited from Control (PRIM_CTRL) |
TouchMove | Determines how the control will respond to touch move processing Inherited from Control (PRIM_CTRL) |
TouchRotate | Determines how the control will respond to touch rotation Inherited from Control (PRIM_CTRL) |
TouchScale | Determines how the control will respond to touch scaling Inherited from Control (PRIM_CTRL) |
TouchSize | Determines whether a control can be resized Inherited from Control (PRIM_CTRL) |
Visible | Show or hide the control Inherited from Control (PRIM_CTRL) |
VisualStyle | VisualStyle sets the appearance Inherited from Control (PRIM_CTRL) |
VisualStyleOfParent | Adopt the Visual style from the parent control Inherited from Control (PRIM_CTRL) |
Width | Width of the component in pixels Inherited from Control (PRIM_CTRL) |
Name | Description |
---|---|
AnimationEnded | Fired when an animation is ended Inherited from Control (PRIM_CTRL)
Cancelled |
CreateInstance | CreateInstance is signalled when an instance of a component is created Inherited from Control (PRIM_CTRL) |
DestroyInstance | DestroyInstance is signalled when an instance of a component is about to be destroyed Inherited from Control (PRIM_CTRL) |
DragDrop | Fired on mouse up to signify the end of a drag process Inherited from Control (PRIM_CTRL)
PosX, PosY, Source, Payload, AggregatedSource, Origin, Handled, DragResult |
DragOver | Fired during the drag and drop process when the cursor moves over the control Inherited from Control (PRIM_CTRL)
PosX, PosY, Source, Payload, DragState, AcceptDrop, DragCursor, ShowDropHilight, AggregatedSource, Origin, Handled |
EndDrag | Fired when the drag and drop process has completed Inherited from Control (PRIM_CTRL)
Source, Payload, DragResult, AggregatedSource, Origin, Handled |
Initialize | Fired after a component has been realized for the first time Inherited from Control (PRIM_CTRL) |
MouseEnter | The mouse has entered the bounds of the control Inherited from Control (PRIM_CTRL) |
MouseHover | The mouse has hovered over the control Inherited from Control (PRIM_CTRL)
Origin, Handled |
MouseLeave | The mouse has left the bounds of the control Inherited from Control (PRIM_CTRL) |
Prepare | A menu is about to be shown
Context, Left, Top, Width, Height, Transition, Continue |
StartDrag | Fired when the user starts a drag and drop process Inherited from Control (PRIM_CTRL)
Source, Payload, Continue, DragList, AggregatedSource, Origin, Handled |
TouchChange | Fired repeatedly between the TouchStart and TouchEnd boundaries to provide details of the touch events Inherited from Control (PRIM_CTRL)
MoveLeft, MoveTop, ScaleWidth, ScaleHeight, Rotation, Continue |
TouchEnd | Fired when the user stops touching the screen Inherited from Control (PRIM_CTRL) |
TouchStart | Fired when the user first makes physical contact with the screen Inherited from Control (PRIM_CTRL)
Origin, TouchMove, TouchRotate, TouchScale, TouchSize |
Name | Description |
---|---|
FadeIn | Animate from invisible to visible Inherited from Control (PRIM_CTRL)
Duration, Delay |
FadeOut | Animate from visible to invisible Inherited from Control (PRIM_CTRL)
Duration, Delay, Visible |
MoveFrom | Move a control from the specified position to the current position Inherited from Control (PRIM_CTRL)
Left, Top, Duration, Delay |
MoveTo | Animate a move from the specified number of pixels Inherited from Control (PRIM_CTRL)
Left, Top, Duration, Delay |
Realize | Creates the visual portion of dynamically created controls Inherited from Control (PRIM_CTRL) |
Scale | Animate a change of scale Inherited from Control (PRIM_CTRL)
ScaleWidth, ScaleHeight, Duration, Delay |
SetFocus | Sets the control to be the focus control Inherited from Control (PRIM_CTRL) |
ShowMessages | LANSA Internal Use Inherited from Control (PRIM_CTRL) |
Transition | Animate the change from one control to another Inherited from Container (PRIM_CPST)
From, To, TransitionType, Duration, Delay |
Unrealize | Destroys the visual portion of dynamically created controls Inherited from Control (PRIM_CTRL) |
UpdateDisplay | UpdateDisplay updates the display immediately Inherited from Control (PRIM_CTRL) |
Febuary 18 V14SP2