Mensagens de notificação do controle deslizante
Um controle deslizante notifica a janela pai de ações do usuário emissor WM_HSCROLL ou mensagens pai de WM_VSCROLL , dependendo da orientação de controle deslizante. Para tratar essas mensagens, adicionar manipuladores para as mensagens de WM_HSCROLL e de WM_VSCROLL para a janela pai. As funções de membro de OnHScroll e de OnVScroll serão transmitidas um código de notificação, a posição do controle deslizante, e um ponteiro para o objeto de CSliderCtrl . Observe que o ponteiro é do tipo CScrollBar * mesmo que aponta para CSliderCtrl um objeto. Você pode precisar typecast esse ponteiro se você precisa manipular o controle deslizante.
Em vez de usar os códigos de notificação da barra de rolagem, os controles deslizantes enviam um conjunto diferente de códigos de notificação. Um controle deslizante envia TB_BOTTOM, TB_LINEDOWN, TB_LINEUP, e a notificação de TB_TOP codifica apenas quando o usuário interage com um controle deslizante usando o teclado. As notificações de TB_THUMBPOSITION e de TB_THUMBTRACK são enviadas somente quando o usuário estiver usando o mouse. Os códigos de notificação de TB_ENDTRACK, de TB_PAGEDOWN, e de TB_PAGEUP são enviados em ambos os casos.
A tabela a seguir lista as notificações de controle deslizante e eventos (códigos chaves ou eventos virtuais do mouse) que faz com que as notificações ser enviado. (Para obter uma lista de códigos chaves virtuais, consulte Winuser.h.)
Notificação |
Evento fazendo com que a notificação a ser enviada |
---|---|
TB_BOTTOM |
VK_END |
TB_ENDTRACK |
WM_KEYUP (o usuário lançou uma chave que envie um código chave relevante virtual) |
TB_LINEDOWN |
VK_RIGHT ou VK_DOWN |
TB_LINEUP |
VK_LEFT ou VK_UP |
TB_PAGEDOWN |
VK_NEXT (o usuário clicou o canal em ou à direita do controle deslizante) |
TB_PAGEUP |
VK_PRIOR (o usuário clicou o canal acima ou à esquerda do controle deslizante) |
TB_THUMBPOSITION |
WM_LBUTTONUP depois de uma notificação de TB_THUMBTRACK |
TB_THUMBTRACK |
Mover o controle deslizante (o usuário arrastou o controle deslizante) |
TB_TOP |
VK_HOME |