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

TDBEdit.KeyDown

Handles key down events in the control.

Declaration

Source position: dbctrls.pp line 193

protected procedure TDBEdit.KeyDown(

  var Key: Word;

  Shift: TShiftState

); override;

Arguments

Key

  

Virtual key code examined and applied in the method.

Shift

  

Key modifier examined and applied in the method.

Description

KeyDown is an overridden method in TDBEdit. KeyDown calls the inherited method, and ensures that the specified virtual key code and modifier are applied in the manner needed for the data-aware control. KeyDown handles the following virtual key codes:

VK_ESCAPE
Cancels an active edit and resets the state for the DataSource. Calls the Reset method in the internal TFieldDataLink, and re-selects the content in the control. Sets Key to the value VK_UNKNOWN.
VK_DELETE or VK_BACK
Sets the value in Key to VK_UNKNOWN when the control is used on a field that cannot be edited.
VK_RETURN
Calls the UpdateRecord method in the internal TFieldDataLink instance when it is in an edit state.

For the macOS (Darwin) platform, additional virtual key codes are detected (and discarded) if the contents of the field in the linked dataset cannot be modified. These keys include:

VK_0..VK_9
numeric characters not on the numeric keypad
VK_A..VK_Z
alphabetic characters
VK_SPACE
space character
VK_NUMPAD0..VK_NUMPAD9
numeric digits on the numeric keypad
VK_MULTIPLY, VK_DIVIDE, VK_ADD, VK_SUBTRACT
operators on the numeric keypad
VK_SEPARATOR, VK_DECIMAL
padded and non-padded Decimal separators
VK_OEM_1
';:' keycap on the US standard keyboard
VK_OEM_2
'/?' keycap on the US standard keyboard
VK_OEM_3
'`~' keycap on the US standard keyboard
VK_OEM_4
'[{' keycap on the US standard keyboard
VK_OEM_5
'\|' keycap on the US standard keyboard
VK_OEM_6
']}' keycap on the US standard keyboard
VK_OEM_7
''"' (Apostrophe and Quote) keycap on the US standard keyboard
VK_OEM_8
miscellaneous character; varies by keyboard layout

For these macOS-specific keys, the value in Key is set to 0 if the field cannot be modified.

Version info

Modified in LCL version 3.6 to handle additional data keys on the macOS (Darwin) platform.

See also

TFieldDataLink.Reset

  

Checks whether the link is active, calls the OnDataChange event handler then sets IsModified to False.

TFieldDataLink.Editing

  

True if the linked field is being edited.

TFieldDataLink.Field

  

The Field to which the datalink is attached.

TDataLink.DataSource

TDataLink.UpdateRecord

TWinControl.KeyDown

  

Signals OnKeyDown event handlers (when assigned).


Version 4.0 Generated 2025-05-03 Home