Partilhar via


Mensagens de notificação do controle deslizante

Um controlo deslizante notifica a sua janela pai das ações do utilizador enviando mensagens WM_HSCROLL ou WM_VSCROLL, dependendo da orientação do controlo deslizante. Para lidar com essas mensagens, adicione manipuladores para as mensagens WM_HSCROLL e WM_VSCROLL à janela pai. As funções de membro OnHScroll e OnVScroll receberão um código de notificação, a posição do controle deslizante e um ponteiro para o objeto CSliderCtrl . Observe que o ponteiro é do tipo CScrollBar * mesmo que aponte para um CSliderCtrl objeto. Talvez seja necessário digitar esse ponteiro se precisar 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 os códigos de notificação TB_BOTTOM, TB_LINEDOWN, TB_LINEUP e TB_TOP somente quando o usuário interage com um controle deslizante usando o teclado. As mensagens de notificação TB_THUMBPOSITION e TB_THUMBTRACK só são enviadas quando o usuário está usando o mouse. Os códigos de notificação TB_ENDTRACK, TB_PAGEDOWN e TB_PAGEUP são enviados em ambos os casos.

A tabela a seguir lista as mensagens de notificação de controle deslizante e os eventos (códigos de chave virtual ou eventos de mouse) que fazem com que as notificações sejam enviadas. (Para obter uma lista de códigos de chave virtual padrão, consulte Winuser.h.)

Mensagem de notificação Evento que causa o envio da notificação
TB_BOTTOM VK_END
TB_ENDTRACK WM_KEYUP (o usuário liberou uma chave que enviou um código de chave virtual relevante)
TB_LINEDOWN VK_RIGHT ou VK_DOWN
ALINHAMENTO_TB VK_LEFT ou VK_UP
TB_PAGEDOWN VK_NEXT (o usuário clicou no canal abaixo ou à direita do controle deslizante)
TB_PAGEUP VK_PRIOR (o usuário clicou no canal acima ou à esquerda do controle deslizante)
POSIÇÃO_DO_POLEGAR_TB WM_LBUTTONUP após uma mensagem de notificação TB_THUMBTRACK
TB_THUMBTRACK Movimento do cursor (o utilizador arrastou o cursor)
TB_TOP VK_HOME

Ver também

Usando CSliderCtrl
Controlos