PDA

Ver la Versión Completa : Como saber si un evento esta programado


xcostey
17-01-2005, 16:32:12
Estoy programando el evento onKeyPress de un form.
Dentro del evento me interesa saber si el evento onKeyPress del componente activo esta programado.

Alguien me puede ayudar?

He intentado com


if assigned( (activecontrol as tWinControl).onkeyPress) then


Pero no me funciona

Gracias

roman
17-01-2005, 16:55:44
El problema es que el evento OnKeyPress en TWinControl está protegido. Para "desprotegerlo" puedes usar:


type
THackWinControl = class(TWinControl);

...

if Assigned(THackWinControl(ActiveControl).OnKeyPress) then
..


Y por cierto, es innecesario poner ActiveControl as TWinControl ya que ActiveControl es precisamente de tipo TWinControl.

// Saludos

xcostey
17-01-2005, 17:00:13
El programa compila correctamente y el funcionamiento es el esperado

Gracias Roman