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

# TWinControl.DoKeyDownBeforeInterface

Handles a KeyDown event before the widget processes the key.

## Declaration

Source position: controls.pp line 2259

`protected function TWinControl.DoKeyDownBeforeInterface(`
`var Message: TLMKey;`
`IsRecurseCall: Boolean`
`):Boolean;`

## Arguments

`Message` |  | Message examined in the method.

## Function result

Set to True when the key was handled.

## Description

Key event handlers are invoked in sequence, until a handler is located which responds to the key.

First, all application wide handlers are invoked (TApplication.NotifyKeyDownBeforeHandler).

Second, the form handler is invoked when KeyPreview is requested.

Third, the DragManager is used to determine the dragging status for the control. It interprets the ESC key as a cancel dragging request, and the CTRL key as a request to ignore drag targets.

Finally, the TWinControl.OnKeyDown user handler is invoked.

If none of the handlers accept / respond to the key, the widgetset class is used to process the key.

## See also

TWinControl.OnKeyDown |  | Event handler signalled for key down keyboard events.
TApplication.NotifyKeyDownBeforeHandler |  | Notifies all ahtKeyDownBefore handlers.