Sign in Join
FPDoc Onlineexperiment

ComCtrls unit

Common controls used in Lazarus forms.

comctrls.pp contains classes and types like those found in the Delphi comctrls.pp unit.

The following components are added to the Lazarus IDE:

Common Controls Tab

  • TTrackbar
  • TProgressBar
  • TTreeView
  • TListView
  • TStatusBar
  • TToolBar
  • TCoolBar
  • TUpDown
  • TPageControl
  • TTabControl
  • THeaderControl

The following components are added but not displayed on the component palette:

  • TToolButton
  • TTabSheet

comctrls.pp is part of the Lazarus Component Library ( LCL).

Classes and records

ETreeNodeErrorclassException type raised for an error retrieving a tree node.
ETreeViewErrorclassException type raised for errors in a tree view.
TCoolBandclassImplements a band displayed on the TCoolBar control.
TCoolBandsclassImplements a collection for TCoolBand items.
TCoolBarclassImplements a Rebar-like control with resizable bands.
TCustomCoolBarclassDefines a Rebar-like control with resizable bands.
TCustomHeaderControlclassTCustomHeaderControl - base class for THeaderControl, a header strip of user-designed sections which allow selection of pages or actions.
TCustomListViewclassTCustomListView is the base class for TListView.
TCustomListViewEditorclassProvides multi-platform editing capabilities for a list view control.
TCustomPageclassThe base class for TTabSheet.
TCustomProgressBarclassImplements the base class for progress bar controls.
TCustomTabControlclassImplements the base class for tabbed controls in the LCL.
TCustomTrackBarclassTCustomTrackBar - the base class for TTrackBar.
TCustomTreeViewclassThe base class for TTreeView.
TCustomUpDownclassTCustomUpDown - base class for TUpDown - a pair of arrow-like buttons which are used to increment or decrement some controlled variable; often attached to a scroll-bar but can also control a digital numeric display.
TDelphiNodeDataInforecordRecord structure used to represent Tree Node Data in Delphi DFM resources.
TDelphiNodeInforecordRecord structure for Tree Node information (for Delphi compatibility).
THeaderControlclassTHeaderControl, a header strip of user-designed sections which allow selection of pages or actions.
THeaderSectionclassImplements a section displayed on a TCustomHeaderControl / THeaderControl instance.
THeaderSectionsclassImplements a collection for sections in a TCustomHeaderControl control.
TIconOptionsclassContains text wrapping and icon layout settings for a list view control.
TListColumnclassRepresents an individual column in a multi-column list control.
TListColumnsclassA collection for TListColumn instances defined for a multi-column list view control.
TListItemclassRepresents the items created in TCustomListView and descendants.
TListItemsclassImplements a container for list items on a list view control.
TListItemsEnumeratorclassImplements an enumerator for TListItem values in a TListItems container.
TListViewclassTListView - a window showing a list of Items which may or may not have associated icons.
TNBBasePagesclassAncestor for the TNBPages class.
TNBNoPagesclassRe-implements an empty page container for TCustomTabControl controls.
TNBPagesclassImplements a list of pages used in TCustomTabControl.
TNodeCacherecordTNodeCache - a cache (temporary storage record) for a TTreeNode and its index.
TNoteBookStringsTabControlclassImplements the tabbed page control used in TNoteBookStringsTabControl.
TOldTreeNodeInforecordTOldTreeNodeInfo - record type (old version) for Tree Node information.
TOwnerDataListItemclassList item class used in a list view control when OwnerData (virtual) mode is enabled.
TOwnerDataListItemsclassContainer for the items in a list view control when owner data (virtual) mode is enabled.
TPageControlclassImplements a multi-page component with a series of tabs.
TProgressBarclassTProgress Bar - a bar that depicts what proportion of a process has been completed.
TStatusBarclassDisplays a panel along the bottom of a form with current status information.
TStatusPanelclassImplements a panel displayed in TStatusBar.
TStatusPanelsclassA collection of panels displayed on a status bar control.
TTabControlclassTTabControl - a series of Tabs along the edge of a display area; selection of a Tab governs the contents of the DisplayRect.
TTabControlNoteBookStringsclassTTabControlNoteBookStrings - instance of TTabControlStrings for use with a TNoteBook.
TTabControlStringsclassTTabControlStrings - the Strings that appear on the tabs of TTabControl.
TTabSheetclassAn individual page used in TPageControl.
TToolBarclassImplements an application tool bar with buttons or other visual controls.
TToolBarEnumeratorclassImplements an enumerator for the buttons defined on a tool bar.
TToolButtonclassTToolButton is a button control used in a TToolBar object.
TToolButtonActionLinkclassTToolButtonActionLink - links a ToolButton on the ToolBar to an Action on an ActionList.
TTrackBarclassTTrackBar: a device which allows the user to determine the value of a variable using a quasi-analog slider.
TTreeNodeclassImplements a tree node displayed in a TTreeView control.
TTreeNodeExpandedStateclassClass used to save and restore the expanded state of a TTreeView.
TTreeNodeInforecordTTreeNodeInfo - record structure for (new) Tree Node information.
TTreeNodesclassImplements a container for TTreeNode instances.
TTreeNodesEnumeratorclassImplements an enumerator for items in the TTreeNodes container.
TTreeViewclassTTreeView is a control that displays a hierarchical list of items.
TUpDownclassTUpDown - a pair of arrow-like buttons which are used to increment or decrement some controlled variable; often attached to a scroll-bar but can also control a digital numeric display.

Procedures and functions

CompareExpandedNodesfunctionFunction to compare the node text in two tree nodes.
CompareTextWithExpandedNodefunctionFunction to compare the given text with the nodetext of the specified tree node.
DbgSfunctionGenerates a list of tab control options for display in the debugger.
RegisterprocedureRegisters components in the Lazarus IDE.
RegisterCustomPageprocedureCalls WSRegisterCustomPage to register a custom page using the widgetset classes.
RegisterCustomTabControlprocedureRegisters TCustomTabControl and its widgetset class type when needed.

Types

PDelphiNodeInfotypeA pointer to TDelphiNodeInfo.
PNodeCachetypePNodeCache - pointer to TNodeCache type.
TAddModeenumerationEnumerated type with values used to determine where a node should be placed in a tree.
TCoolBandMaximizeenumerationNot used in the current LCL implementation.
TCTabControlCapabilitiessetSet type used to store values from the TCTabControlCapability enumeration.
TCTabControlCapabilityenumerationRepresents the capabilities which can be enabled for a notebook or tab control.
TCTabControlOptionenumerationRepresents the LCL options available for TCustomTabControl.
TCTabControlOptionssetSet type used to store values from the TCTabControlOption enumeration.
TCustomDrawResultsetSet type used to store TCustomDrawResultFlag enumeration values.
TCustomDrawResultFlagenumerationRepresents flags returned as custom drawing results.
TCustomDrawStageenumerationTCustomDrawStage a series of constants to define the drawing stages for custom-drawn controls.
TCustomDrawStatesetTCustomDrawState - set of TCustomDrawStateFlag.
TCustomDrawStateFlagenumerationTCustomDrawStateFlag - series of flags to define the DrawState.
TCustomDrawTargetenumerationTCustomDrawTarget - enumerated type controlling how a target object is drawn.
TCustomHCCreateSectionClassEventprocedure typeSpecifies the event handler signalled to get the class type for a new section on a THeaderControl instance.
TCustomPageClasstypeClass reference used to create a new TCustomPage instance.
TCustomSectionNotifyEventprocedure typeTCustomSectionNotifyEvent - generic event notification method for header section.
TCustomSectionTrackEventprocedure typeTCustomSectionTrackEvent - generic event handling method for custom tracking a header section.
TDisplayCodeenumerationTDisplayCode - enumerated type denoting how items are displayed.
TDragBandenumerationRepresents the drag actions for TCoolBar.
TDrawPanelEventprocedure typeSpecifies an event handler used to draw a panel in a status bar.
TDrawTabEventprocedure typeSpecifies an event handler used to draw the tab at the given index to a display rectangle on a tab control.
TGrabStyleenumerationRepresent drawing styles available for the grab bar in TCustomCoolBar.
THeaderSectionClasstypeClass reference used to create new THeaderSection instances.
THeaderSectionStateenumerationEnumerated type which represents selection states for THeaderSection.
THideSelectionModeenumerationControls the display logic used when HideSelection is enabled for a tree view control.
THitTestenumerationRepresents permissible results for a hit test.
THitTestssetSet type used to store values from the THitTest enumeration.
TIconArrangementenumerationRepresents icon arrangement options in a list view control.
TItemChangeenumerationTItemChange - enumerated type for kind of change: in text, in image, or in state.
TItemFindenumerationRepresents a search mechanism used to locate the data for a list view item.
TListColumnClasstype
TListHotTrackStyleenumerationRepresents cursor shapes displayed during hot tracking in a control.
TListHotTrackStylessetSet type used to store values from TListHotTrackStyle.
TListItemClasstypeClass reference used to create new instances of TListItem.
TListItemFlagenumerationTListItemFlag - enumerated type, a flag denoting a list item is being destroyed or created.
TListItemFlagssetSet type used to store TListItemFlag enumeration values.
TListItemsFlagenumerationWidgetset flags applied to the TListItems container.
TListItemsFlagssetSet type used to store TListItemsFlag enumeration values.
TListItemStateenumerationRepresents state values for items in a list view control.
TListItemStatessetSet type used to store value(s) from the TListItemState enumeration.
TListViewFlagenumerationRepresents flag values used in TCustomListView when sorting or validating items in the control.
TListViewFlagssetSet type used to store values from the TListViewFlag enumeration.
TListViewImageListenumerationRepresents the image list sizes used in TCustomListView.
TListViewPropertiessetSet type used to store values from the TListViewProperty enumeration.
TListViewPropertyenumerationRepresents Boolean properties used in TCustomListView.
TLVAdvancedCustomDrawEventprocedure typeSpecifies an event handler signalled to perform advanced custom drawing for an owner-drawn list view control.
TLVAdvancedCustomDrawItemEventprocedure typeSpecifies an event handler signalled to perform advanced custom drawing for a list view item with stage and state information.
TLVAdvancedCustomDrawSubItemEventprocedure typeSpecifies an event handler signalled to perform advancing drawing for a list view sub-item with stage and state information.
TLVChangeEventprocedure typeEvent handler signalled when a property value for a list view item is changed.
TLVChangingEventprocedure typeDefines an event handler signalled when a widgetset class is updating an item on a list view control.
TLVCheckedItemEventprocedure typeSpecifies an event handler signalled when the checked state for an item on a list view control has been changed.
TLVColumnClickEventprocedure typeSpecifies an event handler signalled for a mouse click on a list view column.
TLVColumnRClickEventprocedure typeSpecifies an event handler signalled for a right mouse click on a list view column.
TLVCompareprocedure typeSpecifies a routine used to compare the values in two items in a list view control.
TLVCompareEventprocedure typeSpecifies an event handler signalled to compare two items in a List View control.
TLVCreateItemClassEventprocedure typeSpecifies an event handler signalled to get the class type needed to create a new list view item.
TLVCustomDrawEventprocedure typeSpecifies an event handler signalled to custom draw a list view control.
TLVCustomDrawItemEventprocedure typeSpecifies an event handler signalled to custom draw an item on a list view control.
TLVCustomDrawSubItemEventprocedure typeSpecifies an event handler signalled to draw the SubItem value for a list item on a list view control.
TLVDataEventtypeSpecifies an event handler signalled to get the arbitrary data for an item on a list view control.
TLVDataFindEventprocedure typeSpecifies an event handler used to locate a list view item using the specified search parameters and criteria.
TLVDataHintEventprocedure typeSpecifies a handler routine for data hint events in TListView.
TLVDataStateChangeEventprocedure typeNot used in the current LCL implementation.
TLVDeletedEventprocedure typeSpecifies an event handler signalled when a list view item is deleted.
TLVDrawItemEventprocedure typeSpecifies an event handler signalled to perform default drawing for an item on a list view control.
TLVEditedEventprocedure typeSpecifies an event handler signalled when an edit action is completed for an item on a list view control.
TLVEditingEventprocedure typeSpecifies an event handler signalled when an edit action is started for an item on a list view control.
TLVInsertEventtypeSpecifies an event handler signalled when a list item is added to a list view control.
TLVSelectItemEventprocedure typeSpecifies an event handler signalled when the selected state is changed for an item on a list view control.
TMultiSelectStylesetSet type used to store value(s) from TMultiSelectStyles.
TMultiSelectStylesenumerationRepresents available multi-select styles.
TNBBasePagesClasstypeClass reference used to create new instances of TNBBasePages.
TNodeAttachModeenumerationLocation where a new tree node is attached to its Parent, Child, or Sibling nodes.
TNodeStateenumerationEnumerated type denoting the state for a TreeNode.
TNodeStatessetSet type used to store TNodeState value(s).
TNoteBookStringsTabControlClasstypeClass type reference for TNoteBookStringsTabControl
TOnDragOverTreeViewprocedure type
TPageFlagenumerationContains values which can be assigned to the Flags property in TCustomPage.
TPageFlagssetSet type used to store TPageFlag enumeration values.
TPanelPartenumerationLists the possible parts that make up a status panel.
TPanelPartssetSet type used to store TPanelPart values.
TProgressBarOrientationenumerationRepresents the orientations used for a progress bar.
TProgressBarStateenumerationRepresents state values used when drawing a progress bar.
TProgressBarStyleenumerationRepresents the visual display styles used for a progress bar.
TSBCreatePanelClassEventprocedure typeSpecifies an event handler signalled to get the class type for a new status bar panel.
TSearchDirectionenumerationRepresents a search direction used to locate the list view item that is the nearest match.
TSectionDragEventprocedure typeTSectionDragEvent - generic event handling method for dragging a header section.
TSectionTrackStateenumerationEnumerated type with tracking states for a header section.
TSortDirectionenumerationRepresents the sort direction used for items in a list view control.
TSortIndicatorenumerationRepresents the sort indicators available for a column in a list view control.
TSortTypeenumerationIndicates the sort mechanism used for the items in tree view and list view controls.
TStatusPanelBevelenumerationEnumerated type with the bevel styles used on status bar panels.
TStatusPanelClasstypeClass reference used to create new instances of TStatusPanel.
TStatusPanelStyleenumerationRepresents the style used for a panel on a status bar.
TTabChangingEventprocedure typeTTabChangingEvent - generic event handling method for a change in a notebook Tab.
TTabGetImageEventprocedure typeSpecifies an event handler type used to get the position in an image list for the image on a tab.
TTabPositionenumerationRepresents the position for a tab relative to its page.
TTabStyleenumerationTTabStyle - enumerated type for tab style: normal, buttons or flat buttons.
TTickMarkenumerationTTickMark - enumerated type denoting position of tick marks relative to the track bar.
TTickStyleenumerationTTickStyle - enumerated type denoting style of tick marks.
TToolBarFlagenumerationContains values used as status flags in the TToolBar control.
TToolBarFlagssetSet type used to store values from the TToolBarFlag enumeration.
TToolBarOnPaintButtonprocedure typeSpecifies an event handler signalled to draw a button on a tool bar with a given state.
TToolBarOrientationenumerationRepresents the orientations used in the TToolBar control.
TToolButtonActionLinkClasstypeTToolButtonActionLinkClass - class of TToolButtonActionLink.
TToolButtonFlagenumerationRepresents flag values that can be used in a TToolButton instance.
TToolButtonFlagssetSet type used to store values from the TToolButtonFlag enumeration.
TToolButtonStyleenumerationEnumerated type with values representing the display styles and behaviors for buttons on a TToolBar control.
TTrackBarOrientationenumerationEnumerated type with values that represent the orientation for a track bar.
TTrackBarScalePosenumerationTTrackBarScalePos - enumerated type denoting position of the scale for a track bar.
TTreeNodeArraytypePointer to a TTreeNode type which is the first instance in an allocated block of memory.
TTreeNodeChangeReasonenumerationRepresents reason codes passed to event handlers when a tree node has been changed.
TTreeNodeClasstypeClass type used to create new TTreeNode instances.
TTreeNodeCompareprocedure typeTTreeNodeCompare - generic function to compare Tree Nodes: returns -1 if Node1 is less than Node2, zero if equal, +1 if Node1 is greater.
TTreeViewExpandSignTypeenumerationRepresents symbols types used for expanded or collapsed tree nodes.
TTreeViewInsertMarkTypeenumerationRepresents insert mark locations used in TCustomTreeView.
TTreeViewOptionenumerationTTreeViewOption - enumerated type containing the permissible values for Options in TreeViews.
TTreeViewOptionssetSet type used to store values from the TTreeViewOption enumeration.
TTreeViewStateenumerationTTreeViewState - enumerated type containing the permissible values for state of a TTreeView.
TTreeViewStatessetSet type used to store values from the TTreeViewState enumeration.
TTVAdvancedCustomDrawEventprocedure typeTTVAdvancedCustomDrawEvent - generic event handler method for Tree View advanced custom drawing.
TTVAdvancedCustomDrawItemEventprocedure typeTTVAdvancedCustomDrawItemEvent - generic event handler method for Tree View Item advanced custom drawing.
TTVChangedEventprocedure typeSpecifies an event handler signalled when a tree node has been changed.
TTVChangingEventprocedure typeSpecifies an event handler signalled when a tree node is about to be changed.
TTVCollapsingEventprocedure typeTTVCollapsingEvent - generic event handling method for collapsing a Tree Node if AllowCollapse is True.
TTVCompareEventprocedure typeTTVCompareEvent - generic event handling method for comparing two Tree Nodes.
TTVCreateNodeClassEventprocedure typeSpecifies an event handler signalled to get the class type used to create a new node for a tree view control.
TTVCustomCreateNodeEventprocedure typeTTVCustomCreateNodeEvent - generic event handling method for Tree View node creation.
TTVCustomDrawArrowEventprocedure typeSpecifies an event handler signalled to draw a custom arrow (expand/collapse indicator) for a node on a tree view control.
TTVCustomDrawEventprocedure typeTTVCustomDrawEvent - generic event handling method for Tree View custom drawing.
TTVCustomDrawItemEventprocedure typeTTVCustomDrawItemEvent - generic event handling method for Tree View Item custom drawing.
TTVEditedEventprocedure typeTTVEditedEvent - generic event handling method for a node that has been edited.
TTVEditingEndEventprocedure typeSpecifies an event handler signalled when an edit action for a tree view control has been completed.
TTVEditingEventprocedure typeTTVEditingEvent - generic event handling method for editing a specified node if AllowEdit is True.
TTVExpandedEventprocedure typeTTVExpandedEvent - generic event handling method for a Tree Node that has been expanded.
TTVExpandingEventprocedure typeTTVExpandingEvent - generic event handling method for expanding a tree node if AllowExpansion is True.
TTVGetNodeTextprocedure typeSpecifies an event handler used to get the text for a tree node.
TTVHasChildrenEventprocedure typeSpecifies an event handler signalled to determine if a given tree node has child nodes.
TTVNodeChangedEventprocedure typeSpecifies an event handler signalled when values in a tree node have been changed.
TUDAlignButtonenumerationContains values used to align the buttons on a TUpDown control.
TUDBtnTypeenumerationRepresents the buttons used in a TCustomUpDown control.
TUDChangingEventprocedure typeSpecifies an event handler signalled prior to changing the value in a TUpDown control.
TUDChangingEventExprocedure typeSpecifies an event handler signalled prior to changing the value in a TUpDown control.
TUDClickEventprocedure typeSpecifies an event handler signalled for a button click on a TUpDown control.
TUDOrientationenumerationIndicates the orientation for the arrows on a TUpDown control.
TUpDownDirectionenumerationIndicates whether a value in a TUpDown control is being increased, decreased, or not changed.
TViewStyleenumerationRepresents the view styles available for the items in a list view control.
TWidthtypeRange type with values allowed in width propertied in TListColumn.

Constants

CN_DROPDOWNCLOSEDconstantControl notification message constant.
DefaultMultiSelectStyleconstantDefault value(s) used for the MultiSelectStyle property in TCustomTreeView.
DefaultTreeNodeExpandSignSizeconstantDefault size used for expand and collapse indicators in TCustomTreeView.
DefaultTreeNodeHeightconstantDefault value used as the height for a TTreeNode instance.
DefaultTreeViewOptionsconstantA set of TreeViewOptions which are set be default.
LCLStreamIDconstantA constant with the identifier for a LCL stream.
TCN_FirstconstantRepresents the first tab control notification message.
TCN_SELCHANGEconstantRepresents the selection changed notification message for tab controls.
TCN_SELCHANGINGconstantRepresents the selection changing notification message for tab controls.

Uses

An experiment, built from Lazarus main 2dfa93c66e of 10-22-2026. Not the official Lazarus documentation.