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

TCustomListBox

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

The base class for TListBox.

Declaration

Source position: stdctrls.pp line 537

type TCustomListBox = class(TWinControl)

protected

  class procedure WSRegisterClass; override;

  

Registers this component class with the current WidgetSet.

  procedure AssignItemDataToCache(); virtual;

  

Copy selection state into the cache.

  procedure AssignCacheToItemData(); virtual;

  

Sends the cached selection state to the widget.

  procedure BeforeDragStart; override;

  

Notifies the widgetset class that a Drag operation is starting.

  procedure BeginAutoDrag; override;

  

Starts a non-immediate drag / dock operation for the control.

  function CalculateStandardItemHeight;

  

Determines the standard Height of the items, when no widget has yet been created.

  procedure CreateParams(); override;

  

Initializes the creation parameters for the class instance.

  procedure InitializeWnd; override;

  

Updates Items from the widgetset class and invalidates the item cache.

  procedure DestroyWnd; override;

  

Frees the handle for the window and its canvas.

  procedure FinalizeWnd; override;

  

Caches the Items stored in the widgetset class.

  class function GetControlClassDefaultSize; override;

  

Returns the default size for this class of controls (when added to a form).

  procedure CheckIndex();

  

Ensures that the Item index is within the bounds for the Items in the control.

  function GetItemHeight;

  

Gets the value for the ItemHeight property.

  function GetItemIndex; virtual;

  

Gets the value for the ItemIndex property.

  function GetSelCount;

  

Gets the value for the SelCount property.

  function GetSelected();

  

Gets the value for the Selected property.

  function GetCachedDataSize; virtual;

  

Returns the size for cached item data in the control.

  function GetCachedData();

  

Returns a pointer to the cached item data.

  procedure SetExtendedSelect(); virtual;

  

Sets the value for the ExtendedSelect property.

  procedure SetItemIndex(); virtual;

  

Sets the value for the ItemIndex property.

  procedure SetItems(); virtual;

  

Sets the value for the Items property.

  procedure SetItemHeight();

  

Sets the value for the ItemHeight property.

  procedure SetMultiSelect(); virtual;

  

Sets the value for the MultiSelect property.

  procedure SetSelected();

  

Sets the value for the Selected property.

  procedure SetSorted(); virtual;

  

Sets the value for the Sorted property.

  procedure SetStyle(); virtual;

  

Sets the value for the Style property.

  procedure DrawItem(); virtual;

  

Paints an item in owner-draw mode.

  procedure DoAutoAdjustLayout(); override;

  

Performs actions needed to auto-adjust the control using the specified layout policy.

  procedure DoSelectionChange(); virtual;

  

Signals the OnSelectionChange handler.

  procedure SendItemIndex;

  

Sends the value in ItemIndex to the widgetset class.

  procedure WMGetDlgCode(); message;

  

Handles Tab, Return, and Escape characters in control messages.

public

  constructor Create(); override;

  

Constructor for the class instance.

  destructor Destroy; override;

  

Destructor for the class instance.

  procedure AddItem();

  

Adds an item to the list.

  procedure Click; override;

  

Performs the Changed method when the control is clicked.

  procedure Clear; virtual;

  

Removes all items from the list box control.

  procedure ClearSelection;

  

Unselects all items in the control.

  function GetIndexAtXY();

  

Gets the index for the item at the given client coordinates.

  function GetIndexAtY();

  

Gets the index position for the item at the specified vertical coordinate.

  function GetSelectedText;

  

Get the text for all selected items as a string value.

  function ItemAtPos();

  

Get the item index for the given client coordinates.

  function ItemRect();

  

Returns the client rectangle for an item (including scrollbar area).

  function ItemVisible();

  

Returns True if the item is at least partially visible in the scrollable list.

  function ItemFullyVisible();

  

Returns True if the item is fully visible in the scrollable list.

  procedure LockSelectionChange;

  

Blocks selection changes during update to the widgetset class.

  procedure MakeCurrentVisible;

  

Makes the item at ItemIndex visible, possibly scrolling the list.

  procedure MeasureItem(); virtual;

  

Gets the height for an item in the list.

  procedure SelectAll; virtual;

  

Selects all items in the list (in ExtendedSelect mode).

  procedure SelectRange(); virtual;

  

Changes the selection state for a range of Items in the control.

  procedure DeleteSelected; virtual;

  

Removes one or more selected entries from the Items property.

  procedure UnlockSelectionChange;

  

Removes a previous selection change lock.

  property Align: TAlign;

  

Specifies the placement of the control inside its Parent.

  property Anchors: TAnchors;

  

The set of anchor definitions for this control.

  property BorderStyle: TBorderStyle;

  

Line style used for the border on the control.

  property Canvas: TCanvas; [r]

  

Drawing surface where the control is drawn.

  property ClickOnSelChange: Boolean; [rw]

  

Allows selection changes to generate a Click event.

  property Columns: Integer; [rw]

  

The number of visible vertical columns displayed in the control.

  property Constraints: TSizeConstraints;

  

The minimum and maximum Width and Height for the control.

  property Count: Integer; [r]

  

The number of items defined in the scrollable list box.

  property ExtendedSelect: Boolean; [rw]

  

True when a contiguous range of items can be selected by a Shift+Click. Default is True.

  property Font: TFont;

  

The font to be used for text display in this control.

  property IntegralHeight: Boolean; [rw]

  

Not implemented: shrink the Height of the widget, so that it only shows fully visible rows.

  property ItemHeight: Integer; [rw]

  

The default height for an item displayed in the list.

  property ItemIndex: Integer; [rw]

  

Ordinal position for the currently selected item, -1 if none.

  property Items: TStrings; [rw]

  

The list of all items defined in the control.

  property MultiSelect: Boolean; [rw]

  

Allows selection of more than one item from the list.

  property OnChangeBounds: TNotifyEvent;

  

Event handler for a change of the Bounds of the control.

  property OnClick: TNotifyEvent;

  

Notification handler for mouse clicks.

  property OnDblClick: TNotifyEvent;

  

Event Handler for double mouse clicks.

  property OnDrawItem: TDrawItemEvent; [rw]

  

Handler for painting of a list item in owner-draw mode.

  property OnEnter: TNotifyEvent;

  

Handler for control receiving the focus.

  property OnExit: TNotifyEvent;

  

Handler for control loosing the focus; This is a good place for checking the finished user input.

  property OnKeyDown: TKeyEvent;

  

Handler for keyboard key pressed.

  property OnKeyPress: TKeyPressEvent;

  

Handler for a character entered by the user.

  property OnKeyUp: TKeyEvent;

  

Handler for keyboard key released.

  property OnMeasureItem: TMeasureItemEvent; [rw]

  

Handler invoked when the height for an item is needed.

  property OnMouseDown: TMouseEvent;

  

Event handler for mouse button going down.

  property OnMouseEnter: TNotifyEvent;

  

Event handler for mouse entering the area of the control.

  property OnMouseLeave: TNotifyEvent;

  

Event handler for mouse leaving the area of the control.

  property OnMouseMove: TMouseMoveEvent;

  

Event handler for mouse movement within the control.

  property OnMouseUp: TMouseEvent;

  

Event handler for mouse button going up.

  property OnMouseWheel: TMouseWheelEvent;

  

Event handler for mouse wheel turned.

  property OnMouseWheelDown: TMouseWheelUpDownEvent;

  

Event handler for downward movement of mouse wheel.

  property OnMouseWheelUp: TMouseWheelUpDownEvent;

  

Event handler for upward movement of the mouse wheel.

  property OnResize: TNotifyEvent;

  

Notification handler for a resize of the control.

  property OnSelectionChange: TSelectionChangeEvent; [rw]

  

Handler invoked when an item is selected in the control.

  property OnUTF8KeyPress: TUTF8KeyPressEvent;

  

Handler for a character entered by the user.

  property Options: TListBoxOptions; [rw]

  

Contains options enabled for the list box control.

  property ParentColor: Boolean;

  

Use the Color from the Parent control, when enabled.

  property ParentFont: Boolean;

  

If true, the Font of the control will be the same as the one from the Parent. Default is true.

  property ParentShowHint: Boolean;

  

If true, the value of ShowHint for the control will be the same as the one from the Parent. Default is true.

  property PopupMenu: TPopupMenu;

  

A context-sensitive menu that pops up when the right mouse button is clicked over this control.

  property ScrollWidth: Integer; [rw]

  

The virtual width of the list box, in pixels.

  property SelCount: Integer; [r]

  

The number of selected items in the list.

  property Selected []: Boolean; [rw]

  

The Selected state for an item in the control.

  property ShowHint: Boolean;

  

Enables the Hint display.

  property Sorted: Boolean; [rw]

  

Determines whether the list entries are sorted in alphanumeric order.

  property Style: TListBoxStyle; [rw]

  

Appearance of the list box (normal, owner-draw fixed, or owner-draw variable).

  property TabOrder: TTabOrder;

  

Determines the sequence of control navigation when the user presses the Tab key.

  property TabStop: Boolean;

  

Enables navigation using the Tab key.

  property TopIndex: Integer; [rw]

  

Index of the first visible (or top-most) item.

  property Visible: Boolean;

  

Allows the control, and all of its children, to be displayed or hidden.

end;

Inheritance

TCustomListBox

  

The base class for TListBox.

|

TWinControl

  

The base class for controls 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

TCustomListBox is a TWinControl descendant which specifies the base class used for a list box control. A list box displays a scrollable list which allows selection of one or more of the item values.

TCustomListBox provides methods, properties, and events used to display, order, and select item values. The Items for the control can be assigned at design-time in the Lazarus IDE, or stored at run-time. Owner-drawn styles are available to render icons or bitmaps along with the text for the items, or using a variable height for list items. A Canvas property is provided for owner-drawn usage. Items in the list box can be display in one or more columns.

Do not create instances of TCustomListBox; use the TListBox descendant.

See also

TListBox

  

Control which displays a scrollable list of strings.

TWinControl

  

The base class for controls which can contain other (child) controls.

The latest version of this document can be found at lazarus-ccr.sourceforge.net.