[Overview][Types][Classes][Procedures and functions][Index] | Reference for unit 'ComboEx' (#lcl)

# TCustomComboBoxEx

[Properties (by Name)] [Methods (by Name)] [Events (by Name)]

Implements the base class for an extended/enhanced combo-box.

## Declaration

Source position: comboex.pas line 136

`type TCustomComboBoxEx = class(TCustomComboBox)`
`protected`
`Const`
`cDefAutoCompOpts = [acoAutoAppend]` |  | Default value for the AutoCompleteOptions property.
`cDefStyle = csExDropDown` |  | Default value for the Style property.
`FNeedMeasure: Boolean;` |  | Internal flag which indicates if the text height needs to be calculated when drawing an item.
`FRightToLeft: Boolean;` |  | Internal flag which tracks the BidiMode setting in the control.
`FTextHeight: SmallInt;` |  | Internal derived text height for an item in the combo-box.
`procedure CMBiDiModeChanged(); message;` |  | Performs actions needed when the BiDiMode setting is changed for the control.
`procedure DrawItem(); override;` |  | Draws an item on the extended combo-box control.
`procedure FontChanged(); override;` |  | Performs actions needed when the font in the control has been changed.
`procedure InitializeWnd; override;` |  | Initializes the window handle for the control.
`procedure Notification(); override;` |  | Performs actions needed when the specified component is added to or removed from the control.
`procedure SetItemHeight(); override;` |  | Sets the value for the ItemHeight property.
`public`
`constructor Create(); override;` |  | Constructor for the class instance.
`destructor Destroy; override;` |  | Destructor for the class instance.
`function Add();` |  | Adds a new item to the extended combo-box control.
`procedure AddItem(); override;` |  | Adds the specified item and object instance to the control.
`procedure AssignItemsEx();` |  | Assigns the specified values to the ItemsEx property.
`procedure Clear; override;` |  | Clears the contents in the ItemsEx collection.
`procedure Delete();` |  | Deletes the item stored at the specified ordinal position in ItemsEx.
`procedure DeleteSelected;` |  | Deletes the current item selected in the control.
`procedure Insert();` |  | Inserts a new item with the specified values at the given position.
`property AutoCompleteOptions: TAutoCompleteOptions; [rw]` |  | Contains settings for auto-complete features enabled in the control.
`property Images: TCustomImageList; [rw]` |  | Contains images which can be displayed for items defined in the ItemsEx property.
`property ImagesWidth: Integer; [rw]` |  | Specifies the width for images displayed in the control.
`property ItemsEx: TComboExItems; [rw]` |  | Collection with the extended items defined for the control.
`property Style: TComboBoxExStyle; [rw]` |  | Specifies the control style used for the edit in the combo-box control.
`property StyleEx: TComboBoxExStyles; [rw]` |  | Enables features or behaviors in the extended combo-box control.
`end;`

## Inheritance

`TCustomComboBoxEx` |  | Implements the base class for an extended/enhanced combo-box.
`TCustomComboBox` |  | The base class for combo-box components.
`TWinControl` |  | Implements a windowed control which can contain other child controls.
`TControl` |  | The base class for visible controls.
`TLCLComponent` |  | The base class for LCL components which have an associated widget.
`TComponent`
?
`TObject`

## Description

TCustomComboBoxEx is a TCustomComboBox descendant which implements the base class for TComboBoxEx.

TCustomComboBoxEx provides an extended combo-box with added features and capabilities like auto completion, additional display styles, more editing options, and a list with Images used in the control. Another key feature in the class is an extended Items property which provides normal, selected, and overlay image indexes and allows indentation between the image and caption for items in the combo-box. A pointer to arbitrary data for Items used in sort operations is also provided.

## See also

TComboBoxEx |  | Implements an extended combo-box component.
TCustomComboBox |  | The base class for combo-box components.