TcxCustomEditButton.Kind Property
Specifies the button content type.
Declaration
property Kind: TcxEditButtonKind read; write; default bkDown;
Property Value
Type | Default | Description |
---|---|---|
TcxEditButtonKind | bkDown | The editor button content type. |
Remarks
An editor button can display a glyph, ellipsis, or text. You can use the Kind
property to switch between supported content types.
Editor buttons can display a hint regardless of the selected content type.
Property Value Examples
The following table demonstrates the difference between all button content types under the same conditions:
Value | Description | Example[1] |
---|---|---|
bkDown (default) | The editor button displays the predefined Down glyph (the drop-down button glyph like in a combo box editor). | |
bkEllipsis | The editor button displays an ellipsis. | |
bkGlyph | The editor button displays a custom glyph defined in the ImageIndex or Glyph property. The Glyph property has higher priority and the Caption property value is ignored. | |
bkText | The editor button displays custom text assigned to the Caption property. ImageIndex and Glyph properties have no effect. |
Code Example
The code example below demonstrates OnButtonClick and OnCreate event handlers.
The application form’s OnCreate event handler creates two additional embedded buttons in a TcxButtonEdit control and configures the appearance and behavior of all embedded buttons. The OnButtonClick event handler associates all created buttons with the editor’s functionality.
Note
This example uses a TcxImageList component with three SVG icons as a source of glyphs for the created buttons.
procedure TMyForm.cxButtonEdit1PropertiesButtonClick(Sender: TObject;
AButtonIndex: Integer);
var
AEditor: TcxButtonEdit;
begin
AEditor := Sender as TcxButtonEdit;
if AButtonIndex = 0 then // The first button clears the editor
AEditor.Clear
else if AButtonIndex = 1 then // The second button selects content
AEditor.SelectAll
else if AButtonIndex = 2 then // The third button hides or reveals content
begin
if AEditor.Properties.EchoMode = eemNormal then
AEditor.Properties.EchoMode := eemPassword
else
AEditor.Properties.EchoMode := eemNormal;
end;
end;
procedure TMyForm.FormCreate(Sender: TObject);
var
AProperties: TcxButtonEditProperties;
I: Integer;
begin
cxButtonEdit1.ShowHint := True; // Enables hints for the editor
AProperties := cxButtonEdit1.Properties;
AProperties.BeginUpdate; // Initiates the following batch change
try
AProperties.Images := cxImageList1; // Assigns the source of button glyphs
// Create two additional buttons
AProperties.Buttons.Add;
AProperties.Buttons.Add;
// Specify common button settings
for I := 0 to AProperties.Buttons.Count - 1 do
begin
AProperties.Buttons.Items[I].Kind := bkGlyph; // Changes the button content type to "glyph"
AProperties.Buttons.Items[I].ImageIndex := I; // Specifies image indexes in the source list
AProperties.Buttons.Items[I].HotTrackMode := TcxEditButtonHotTrackMode.Editor;
end;
// Specify unique button settings
AProperties.Buttons.Items[0].Hint := 'Clear';
AProperties.Buttons.Items[1].Hint := 'Select All';
AProperties.Buttons.Items[2].Hint := 'Hide/Reveal';
AProperties.Buttons.Items[2].LeftAlignment := True;
AProperties.Buttons.Items[2].Transparent := True;
finally
AProperties.EndUpdate; // Calls EndUpdate regardless of the batch operation's success
end;
end;
Default Value
The Enabled
property’s default value is bkDown
.
Note
Certain editors use a different default content type for predefined buttons.
-
These examples demonstrate all possible
Kind
property values for the same button editor with one embedded button under the following conditions:- The
WXI
skin is in effect. - The
Calmness
color palette is selected.
- The