Este componente 'no visual' captura todos/parte de los mensajes que reciben
un conjunto de los controles que contenga el form pero no impide que los
controles respondan al mensaje, sino que salta justo antes o después
de que éstos respondan.
Hay que tener cuidado con lo que se programa en el evento OnCatchEvent
porque saltará cada vez que los controles que le señalemos
reciban mensajes (y pueden ser cientos, por ejemplo movimientos del ratón).
Propiedades:
Controls : Colección
de controles de los que capturar los mensajes.
MessageCatched : Conjunto
de los posibles Mensajes que se capturarán :
Valor
propiedad |
Mensaje
Windows |
mtAny |
(Todos los mensajes incluso los que no aparecen en
esta lista) |
mtSetFocus |
WM_SETFOCUS |
mtKillFocus |
WM_KILLFOCUS |
mtSetText |
WM_SETTEXT |
mtGetText |
WM_GETTEXT |
mtKeyDown |
WM_KEYDOWN |
mtKeyUp |
WM_KEYUP |
mtChar |
WM_CHAR |
mtPaste |
WM_PASTE |
mtCut |
WM_CUT |
mtCopy |
WM_COPY |
mtClear |
WM_CLEAR |
mtHScroll |
WM_HSCROLL |
mtVScroll |
WM_VSCROLL |
mtMouseWheel |
WM_MOUSEWHEEL |
mtLButtonDown |
WM_LBUTTONDOWN |
mtLButtonUp |
WM_LBUTTONUP |
mtLButtonDblClk |
WM_LBUTTONDBLCLK |
mtRButtonDown |
WM_RBUTTONDOWN |
mtRButtonUp |
WM_RBUTTONUP |
mtRButtonDblClk |
WM_RBUTTONDBLCLK |
mtMButtonDown |
WM_MBUTTONDOWN |
mtMButtonUp |
WM_MBUTTONUP |
mtMButtonDblClk |
WM_MBUTTONDBLCLK |
mtMove |
WM_MOVE |
mtMouseEnter |
CM_MOUSEENTER |
mtMouseLeave |
CM_MOUSELEAVE |
mtMouseMove |
WM_MOUSEMOVE |
mtPaint |
WM_PAINT |
Catch : OnCatchEvent
salta antes o después de que el control responda al mensaje.
Si pone el valor de la propiedad a cBefore, el código
del evento OnCatchEvent no debe provocar nuevos mensajes en el control:
cBefore Salta antes.
cAfter Salta después.
Eventos :
OnCatchEvent : Salta cada
vez que los controles reciben un mensaje (cualquie mensaje o de los
de la propiedad MessageCatched)
y se ejecuta antes o después de que éstos hayan respondido
al mensaje.
Ejemplo
|