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

# TDBEdit

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

TDBEdit - a data-aware edit box for processing a single text-string from a dataset.

## Declaration

Source position: dbctrls.pp line 177

`type TDBEdit = class(TCustomMaskEdit)`
`protected`
`function GetReadOnly; override;` |  | Gets the value for the ReadOnly property.
`procedure SetReadOnly(); override;` |  | Sets the value for the ReadOnly property.
`procedure KeyDown(); override;` |  | Handles key down events in the control.
`procedure UTF8KeyPress(); override;` |  | Handles UTF-8 characters for the data-aware control.
`procedure Notification(); override;` |  | Handles notifications when a component is added or removed from the control.
`function EditCanModify; override;` |  | Indicates if the control can modify the text for the control value.
`function GetEditText; override;` |  | Gets the value for the EditText property.
`procedure Change; override;` |  | Performs actions needed when the value for the control has been changed.
`procedure Reset; override;` |  | Cancels pending changes to the linked dataset.
`procedure WMSetFocus(); message;` |  | Ensures that the control has the input focus.
`procedure WMKillFocus(); message;` |  | Ensures that the liked dataset is updated when the modified control loses input focus.
`procedure WndProc(); override;` |  | Handles the specified LCL message for the control.
`public`
`constructor Create(); override;` |  | Constructor for the class instance.
`destructor Destroy; override;` |  | Destructor for the class instance.
`function ExecuteAction(); override;` |  | Provides support for TBasicAction in the control.
`function UpdateAction(); override;` |  | Updates the specified action to reflect the current state in the linked dataset.
`property Field: TField; [r]` |  | Provides access to the field definition for the data-aware control.
`published`
`property CustomEditMask: Boolean; [rw]` |  | Indicates if a custom edit mask is used in the control.
`property DataField: string; [rw]` |  | Contains the name of the field with the value for the control.
`property DataSource: TDataSource; [rw]` |  | Provides access to the dataset with content for the control.
`property ReadOnly: Boolean; [rw]` |  | Indicates if the control cannot modify the field in the linked dataset.
`property Align: TAlign;` |  | Specifies the placement of the control on its Parent control.
`property Alignment: TAlignment;` |  | The horizontal alignment for the text in the control (left, right, or centered).
`property Anchors: TAnchors;` |  | The set of anchor definitions for this control.
`property AutoSelect: Boolean;` |  | Enables auto-selection of text when focused.
`property AutoSize: Boolean;` |  | Allows automatic adjustment of the size for the control, according to its content.
`property BiDiMode: TBiDiMode;` |  | Indicates whether text controls use in bi-directional reading.
`property BorderSpacing: TControlBorderSpacing;` |  | Determines the inner and outer border spacing for this control.
`property BorderStyle: TBorderStyle;` |  | Indicates the border style displayed around the control.
`property CharCase: TEditCharCase;` |  | Controls the character case applied to values entered in the control.
`property Color: TColor;` |  | The background color for the control.
`property Constraints: TSizeConstraints;` |  | Contains the minimum and maximum Width and Height for the control.
`property DoubleBuffered: Boolean;` |  | When enabled, it reduces flicker when the control is painted.
`property DragCursor: TCursor;` |  | The cursor shape shown during a drag operation.
`property DragKind: TDragKind;` |  | Indicates the action performed for a drag operation: drag-and-drop or drag-and-dock.
`property DragMode: TDragMode;` |  | Determines how a drag operation is started for the control.
`property Enabled: Boolean;` |  | Determines whether the control responds to mouse or keyboard input.
`property EditMask: string;` |  | Contains the mask characters classes and literals used to format/obscure the value for the control.
`property Font: TFont;` |  | The font to be used for text display in this control.
`property MaxLength: Integer;` |  | The maximum length of the value entered in Text, or 0 (zero) for unlimited length.
`property ParentBiDiMode: Boolean;` |  | Indicates whether the BiDiMode settings in the Parent control are used.
`property ParentColor: Boolean;` |  | Use the Color from the Parent control, when enabled.
`property ParentDoubleBuffered: Boolean;` |  | Value for the DoubleBuffered property in a Parent control.
`property ParentFont: Boolean;` |  | Indicates if the Font from the Parent control is used in the control.
`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 PasswordChar: Char;` |  | Allows obfuscation of the displayed text, showing all characters as PasswordChar.
`property PopupMenu: TPopupMenu;` |  | A context-sensitive menu that pops up when the right mouse button is clicked over this control.
`property ShowHint: Boolean;` |  | Enables Hint display for the control.
`property TabOrder: TTabOrder;` |  | Indicates the navigation order for the control when the user presses the Tab or Shift+Tab key.
`property TabStop: Boolean;` |  | Allows the user to navigate to / from the control by pressing the Tab or Shift+Tab keys.
`property TextHint: TTranslateString;` |  | Default hint text shown when the Text property is empty for the control.
`property Visible: Boolean;` |  | Allows the control, and all of its children, to be displayed or hidden.
`property OnChange: TNotifyEvent;` |  | Event handler signalled when the text for the control is changed.
`property OnClick: TNotifyEvent;` |  | Notification handler for mouse clicks.
`property OnContextPopup: TContextPopupEvent;` |  | Invoked when a context-sensitive pop-up menu is requested.
`property OnDblClick: TNotifyEvent;` |  | Event handler signalled when a mouse double click occurs in the control.
`property OnDragDrop: TDragDropEvent;` |  | Event handler signalled when an object is dropped onto the control.
`property OnDragOver: TDragOverEvent;` |  | Event handler signalled when a control is dragged over the control instance.
`property OnEditingDone: TNotifyEvent;` |  | Event handler signalled when editing is completed for the control.
`property OnEndDrag: TEndDragEvent;` |  | Event handler signalled for the end of a drag-drop operation.
`property OnEnter: TNotifyEvent;` |  | Event handler signalled when the control receives focus.
`property OnExit: TNotifyEvent;` |  | Event handler signalled when the control loses focus.
`property OnKeyDown: TKeyEvent;` |  | Event handler signalled when a key is down while control has focus.
`property OnKeyPress: TKeyPressEvent;` |  | Event handler signalled when a key is being pressed while the control has focus.
`property OnKeyUp: TKeyEvent;` |  | Event handler signalled when a key becomes up (not pressed) while the control has focus.
`property OnMouseDown: TMouseEvent;` |  | Event handler signalled when a mouse down event is handled for the control.
`property OnMouseEnter: TNotifyEvent;` |  | Event handler signalled when the mouse pointer has entered the control.
`property OnMouseLeave: TNotifyEvent;` |  | Event handler signalled when the mouse pointer has left the control.
`property OnMouseMove: TMouseMoveEvent;` |  | Event handler signalled when the mouse pointer is moved in the control.
`property OnMouseUp: TMouseEvent;` |  | Event handler signalled when a mouse up event is handled for the control.
`property OnMouseWheel: TMouseWheelEvent;` |  | Event handler for mouse wheel turned.
`property OnMouseWheelDown: TMouseWheelUpDownEvent;` |  | Event handler signalled for a downward movement of the mouse wheel.
`property OnMouseWheelUp: TMouseWheelUpDownEvent;` |  | Event handler signalled for an upward movement of the mouse wheel.
`property OnStartDrag: TStartDragEvent;` |  | Event handler signalled for the start of a dragging operation.
`property OnUTF8KeyPress: TUTF8KeyPressEvent;` |  | Handler for a character entered by the user.
`end;`

## Inheritance

`TDBEdit` |  | TDBEdit - a data-aware edit box for processing a single text-string from a dataset.
`TCustomMaskEdit` |  | The base class for TMaskEdit.
`TCustomEdit` |  | The base class for controls presenting editable text.
`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

TDBEdit is a TCustomMaskEdit descendant which implements a data-aware control which allows editing of the value in a database field. Like its ancestor class, TDBEdit displays and edits a single line of text. For multi-line text values, use the TDBMemo control.

TDBEdit extends the ancestor class with additional properties needed to configure the data-aware features in the control, including:

DataSource
  Component which provides access to the dataset with the field value
DataField
  Name of the field in the dataset edited in the control
Field
  Field definition and metadata in the dataset
ReadOnly
  Indicates if the value for the control (and its field) cannot be changed

An internal TFieldDataLink class instance is used to maintain an association between the control and its data source. TDBEdit provides methods which support use of TBasicAction with the data link for the control.

TDBEdit extends the masking capabilities from the ancestor to include use of mask-related properties like EditMask and Alignment set in the TField instance for the control. Use the CustomEditMask property to enable an edit mask independent of the value defined in the dataset Field.

## See also

How To Use Data-aware Controls |  | HowToUseDataAwareControls - Hints for accessing databases.