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

# TControl.Perform

Calls a message handler directly, bypassing the message queue.

## Declaration

Source position: controls.pp line 1732

`public function TControl.Perform(`
`Msg: Cardinal;`
`WParam: WPARAM;`
`LParam: LPARAM`
`):LRESULT;`

## Arguments

`Msg` |  | Control message constant for the message executed in the method.
`WParam` |  | Parameter with a handle or Integer value (not necessarily 16-bits any more).
`LParam` |  | Parameter with a Pointer to its value (not necessarily 32-bits any more).

## Function result

Result value from the WindowProc routine.

## Description

Perform is a method used to pass a message to the processing loop for the control.

Values in the Msg, WParam, and LParam arguments are stored in a TLMessage instance and passed as an argument to the routine in the WindowProc property. The return value is the LRESULT returned from the WindowProc routine.

## See also

TControl.WindowProc |  | The handler for all messages.
TWndMethod |  | Method type for WindowProc handlers.
TLMessage |  |
LRESULT |  | Type of a message result (pointer-sized).