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

# TCustomBitBtn

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

TCustomBitBtn - the ancestor class for TBitBtn.

## Declaration

Source position: buttons.pp line 163

`type TCustomBitBtn = class(TCustomButton)`
`protected`
`FButtonGlyph: TButtonGlyph;` |  | An internal member which contains the TButtonGlyph instance for the control.
`class procedure WSRegisterClass; override;` |  | Registers this component class with the current WidgetSet.
`procedure ActionChange(); override;` |  | Performs action when a new value is assigned to the Action property for the control.
`procedure GlyphChanged();` |  | Performs actions needed when the value in Glyph has been changed.
`procedure InitializeWnd; override;` |  | Copies cached control properties to the newly created widget.
`function IsCaptionStored;` |  | Gets the storage specifier for the Caption property.
`procedure Loaded; override;` |  | Performs actions needed when the component has been loaded using LCL component streaming.
`procedure Notification(); override;` |  | Performs actions needed when a sub-component is added or removed in the class instance.
`procedure TextChanged; override;` |  | Performs actions needed when the CM_TEXTCHANGED control message is handled for the control.
`class function GetControlClassDefaultSize; override;` |  | Returns the default dimensions for new instances of the class.
`procedure CMAppShowBtnGlyphChanged(); message;` |  | Handles the CM_APPSHOWBTNGLYPHCHANGED message for the control.
`public`
`constructor Create(); override;` |  | Constructor for the class instance.
`destructor Destroy; override;` |  | Destructor for the class instance.
`procedure Click; override;` |  | Performs actions needed when the button is clicked.
`procedure LoadGlyphFromResourceName();` |  | Loads the Glyph image with the specified named from a resource instance.
`procedure LoadGlyphFromLazarusResource();` |  | Loads a glyph image from the Lazarus resource file (.lrs).
`procedure LoadGlyphFromStock();` |  | Loads a stock glyph image for the specified button identifier.
`procedure LoadGlyphFromResource();` |  | Loads the glyph image for the specified button identifier from the internal LCL resource.
`function CanShowGlyph();` |  | Indicates if the Glyph for the button can be displayed.
`property Caption: TCaption; [s]` |  | Contains the descriptive text displayed for the Bitmap button control.
`property DefaultCaption: Boolean; [rw]` |  | Indicates if Caption contains the default value for the button Kind.
`property DisabledImageIndex: TImageIndex; [rw]` |  | Ordinal position for the image displayed when the button is Disabled.
`property Glyph: TBitmap; [rws]` |  | Bitmap with the Glyph displayed on the control.
`property NumGlyphs: Integer; [rw]` |  | The number of glyph bitmaps available for the control.
`property HotImageIndex: TImageIndex; [rw]` |  | Ordinal position for the bitmap displayed when the button control is hot (hovered).
`property Images: TCustomImageList; [rw]` |  | Contains the list of images available for use as the glyph on a custom button control.
`property ImageIndex: TImageIndex; [rw]` |  | Ordinal position for the default bitmap displayed when the button control is up (not pressed).
`property ImageWidth: Integer; [rw]` |  | Width for the value in Images displayed on the button control.
`property Kind: TBitBtnKind; [rw]` |  | Specifies the button kind including the default bitmap and caption for the button control.
`property Layout: TButtonLayout; [rw]` |  | Layout or alignment for the glyph bitmap and caption on the control.
`property Margin: Integer; [rw]` |  | The space prior to the glyph bitmap on the aligned edge of the button layout.
`property PressedImageIndex: TImageIndex; [rw]` |  | Ordinal position for the bitmap displayed when the button control is pressed (down).
`property Spacing: Integer; [rw]` |  | The space reserved between the bitmap and the caption on the button control.
`property GlyphShowMode: TGlyphShowMode; [rw]` |  | Indicates the policy for showing or hiding the glyph image for the button.
`end;`

## Inheritance

`TCustomBitBtn` |  | TCustomBitBtn - the ancestor class for TBitBtn.
`TCustomButton` |  | The base class for a push button control.
`TButtonControl` |  | Specifies a base class for button controls.
`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

TCustomBitBtn is a TCustomButton descendant, and the ancestor for TBitBtn. It provides the interface used to display a button with a glyph (or image) and a caption. It performs an action when the button is clicked.

If you want to define your own bitmap button class, you should derive it from this class.