Ribbon

Inheritance Hierarchy

          IComponent

          IControl

          IRibbon

          Ribbon

Description

The Ribbon component is used to create component ribbon.

Working with the Component

Component ribbon is a modern interface solution which combines main menu and application toolbars. Ribbon includes separate tabs, Quick Access Toolbar, application button and general controls.

Tabs contains panes, which house various controls grouped according to their functionality. Tabs can be standard or context. Standard tabs are always displayed in an application. Context tabs appear when a certain condition is met, for example when a certain object is selected.

Quick Access Toolbar houses the most frequently used application commands. Application button serves to bring up the main menu. General controls are displayed at the right at the level of ribbon tab headings; they can be used to perform minor operation, for example, to open help system.

Component Setup

After adding a component to form, a user is prompted to select Resource object which will store ribbon images. This object can be also defined in the  Resources  property in object inspector. An area is selected at the upper part of the form which will further display the ribbon. To customize ribbon, select the Edit item in the context menu of the component. The ribbon editor opens. Create required tab in the editor, next create panes on the tabs and populate them with controls. When various parameters are edited in the editor (designer), the ribbon dynamically changes on the form.

If required, form structure can be stored in XML format. To save and load structure, use appropriate items of context menu of the Ribbon component.

Handling Control Events

When a control is used, the following event is generated for this control the  OnChange event is generated. The  OnChange  event is also generated for the Ribbon component. In component event, use property of the  Element argument, to get corresponding control. Each control has an unique identifier. You can set correspondence between specific controls and execution of application code by organizing ID checkup in event handler.

Usage Characteristics

On creating and loading file using the LoadFromXML method, avoid using system element identifiers (for example ID_APP_EXIT). Such identifiers will be replaced with automatically generated ones.

Example

Properties of the Ribbon Component

  Property name Brief description
ActiveCategory The ActiveCategory property determines active ribbon tab.
Align The Align property determines the behavior of the component, when the size of its parent component is changed.
AllowDrag The AllowDrag property determines whether an object can be dragged from the component.
AllowDrop The AllowDrop property determines whether the component can accept a dragged object.
Anchors The Anchors property returns settings that determine the percentage of the size change for the current component when the parent component is resized.
Brush The Brush property specifies the brush used to fill the component area.
Categories The Categories property returns collection of available ribbon tabs.
ClientHeight The ClientHeight property is used to receive or specify the height of the component’s client space.
ClientWidth The ClientWidth property is used to receive or specify the width of the component’s client space.
Color The Color property determines the background color of a component.
ComponentCount The ComponentCount property returns the number of child components.
Components The Components property returns the child component.
Contexts The Contexts property returns a collection of context tabs.
Cursor The Cursor property determines the look of the cursor over the component.
Data The Data property is used to store any custom data.
Elements The Elements property returns a collection of controls shown on all ribbon tabs.
Enabled The Enabled property determines whether the component is available for the user.
Focused The Focused property returns True, if the focus is set on the component.
Font The Font property determines the set of characteristics, describing the font, used to display text.
Height The Height property determines the component height.
HelpContext The HelpContext property determines a unique index for the context help section for this component.
Hidden The Hidden property determines whether ribbon is hidden.
Hint The Hint property determines the hint text for the component.
Images The Images property determines the component,which contains images to be used on the ribbon.
Left The Left property determines the coordinate of the left border of the component.
MainButton The MainButton property returns parameters of application button.
MainCategory The MainCategory property returns parameters of main ribbon menu.
Name The Name property determines the component name.
Parent The Parent property determines the parent component.
ParentColor The ParentColor property determines whether the component inherits the color of the parent component.
ParentFont The ParentFont property determines whether the component should use the font of the parent component.
ParentShowHint The ParentShowHint property determines when a tooltip is displayed.
PopupMenu The PopupMenu property determines the context menu to be displayed on right-click.
QuickAccessToolbar The QuickAccessToolbar property returns parameters of the Quick Access Toolbar.
Resources The Resources property determines the Resources repository object images of which are to be used in ribbon controls.
Scrolls The Scrolls property returns parameters of component's scrollbars.
ShowHint The ShowHint property enables and disables showing a hint for the component.
TabElements The TabElements property returns a collection of general ribbon controls.
TabOrder The TabOrder property determines the component position in the tab order.
TabStop The TabStop property determines whether the focus is set to a component when the Tab button is pressed.
Tag The Tag property is not used by the compiler. The user can change the value of the Tag property and use it as required.
Text The Text property determines the row identifying a component for user.
Top The Top property determines the coordinate of the top border of the component.
Visible The Visible property determines the visibility of the component during execution.
Width The Width property determines the component width.

Methods of the Ribbon Component

  Method name Brief description
BringToFront The BringToFront method brings a component to front.
ClientToScreen The ClientToScreen method converts point coordinates relative to component coordinates into display coordinates.
DoDragDrop The DoDragDrop method allows to start drag-and-drop operation.
FindById The FindById method finds a control based on its numeric identifier.
GetImage The GetImage method returns the image of the component with all the child components.
LoadFromXML The LoadFromXML method loads data from XML file and creates visual ribbon.
SaveToXML The SaveToXML method saves ribbon structure in XML format and returns obtained XML string.
ScreenToClient The ScreenToClient method converts screen coordinates of a point to coordinates specified relative to the component coordinate system.
SendToBack The SendToBack method sends a component to back.
SetFocus The SetFocus method sets focus to this component.

Events of the Ribbon Component

  Event name Brief description
OnBeginDrag The OnBeginDrag event occurs for a component, when a user starts to drag an object from the component.
OnChange The OnChange event occurs when ribbon controls are used.
OnClick The OnClick event occurs if a user clicks a component area using the main mouse button.
OnDblClick The OnDblClick event occurs if a user double-clicks a component area using the mouse button.
OnDragDrop The OnDragDrop event occurs for a component if a user drops a dragged object over it.
OnDragEnter The OnDragEnter event occurs when a dragged object crosses the borders of this component.
OnDragLeave The OnDragLeave event occurs when a dragged object leaves the borders of this component.
OnDragOver The OnDragOver event occurs for this component when a user drags a dragged object over it.
OnEnter The OnEnter event occurs when a component receives focus.
OnExit The OnExit event occurs when a component loses focus.
OnHScroll The OnHScroll event occurs when the horizontal scrollbar slider changes its position.
OnKeyDown The OnKeyDown event occurs if a component is focused and a keyboard key is pressed.
OnKeyPress The OnKeyPress event occurs if a component is focused when a user presses a character key.
OnKeyUp The OnKeyUp event occurs if a component is focused and a user releases any button previously pressed.
OnMouseDown The OnMouseDown event occurs when the pointer is in component area and a mouse button is pressed.
OnMouseEnter The OnMouseEnter event occurs when mouse cursor enters the component area.
OnMouseHover The OnMouseHover event occurs when mouse cursor is held in the component area.
OnMouseLeave The OnMouseLeave event occurs when mouse cursor leaves the component area.
OnMouseMove The OnMouseMove event occurs on moving the cursor over component.
OnMouseUp The OnMouseUp event occurs on releasing mouse button when the cursor is in component area.
OnMouseWheel The OnMouseWheel event occurs if the component has focus when the mouse wheel is rotated.
OnUpdate The OnUpdate event occurs on ribbon update.
OnVScroll The OnVScroll event occurs when the vertical scrollbar slider changes its position.

See also:

Additional Components