Mensajes de notificación de control deslizante
Un control deslizante notifica a su ventana primaria sobre acciones de usuario enviando los mensajes primarios WM_HSCROLL o WM_VSCROLL, en función de la orientación del control deslizante. Para controlar estos mensajes, agregue controladores para los mensajes WM_HSCROLL y WM_VSCROLL a la ventana primaria. Las funciones miembro OnHScroll y OnVScroll recibirán un código de notificación, la posición del control deslizante y un puntero al objeto CSliderCtrl. Tenga en cuenta que el puntero es de tipo CScrollBar *
aunque apunte a un objeto CSliderCtrl
. Es posible que tenga que convertir este puntero si necesita manipular el control deslizante.
En lugar de usar los códigos de notificación de la barra de desplazamiento, los controles deslizantes envían un conjunto diferente de códigos de notificación. Un control deslizante envía los códigos de notificación TB_BOTTOM, TB_LINEDOWN, TB_LINEUP y TB_TOP solo cuando el usuario interactúa con un control deslizante mediante el teclado. Los mensajes de notificación TB_THUMBPOSITION y TB_THUMBTRACK solo se envían cuando el usuario usa el mouse. Los códigos de notificación TB_ENDTRACK, TB_PAGEDOWN y TB_PAGEUP se envían en ambos casos.
En la tabla siguiente se enumeran los mensajes de notificación de control deslizante y los eventos (códigos de clave virtual o eventos del mouse) que ocasionan que se envíen las notificaciones. (Para obtener una lista de códigos de claves virtuales estándar, consulte Winuser.h.)
Mensaje de notificación | Evento que ocasiona que se envíe la notificación |
---|---|
TB_BOTTOM | VK_END |
TB_ENDTRACK | WM_KEYUP (el usuario liberó una clave que envió un código de clave virtual pertinente) |
TB_LINEDOWN | VK_RIGHT o VK_DOWN |
TB_LINEUP | VK_LEFT o VK_UP |
TB_PAGEDOWN | VK_NEXT (el usuario hizo clic en el canal debajo o a la derecha del control deslizante) |
TB_PAGEUP | VK_PRIOR (el usuario hizo clic en el canal situado encima o a la izquierda del control deslizante) |
TB_THUMBPOSITION | WM_LBUTTONUP después de un mensaje de notificación TB_THUMBTRACK |
TB_THUMBTRACK | Movimiento del control deslizante (el usuario arrastró el control deslizante) |
TB_TOP | VK_HOME |