Mensagem WM_VSCROLL

A mensagem WM_VSCROLL é enviada a uma janela quando ocorre um evento de rolagem na barra de rolagem vertical padrão da janela. Essa mensagem também é enviada ao proprietário de um controle de barra de rolagem vertical quando ocorre um evento de rolagem no controle.

Uma janela recebe essa mensagem por meio da sua função WindowProc.

WM_VSCROLL

    WPARAM wParam
    LPARAM lParam; 

Parâmetros

wParam

A HIWORD especifica a posição atual da caixa de rolagem se a LOWORD for SB_THUMBPOSITION ou SB_THUMBTRACK; caso contrário, essa palavra não será utilizada.

A LOWORD especifica um valor de barra de rolagem que indica a solicitação de rolagem do usuário. Esse parâmetro pode usar um dos valores a seguir.

Valor Significado
SB_BOTTOM
Role para o canto inferior direito.
SB_ENDSCROLL
Encerra a rolagem.
SB_LINEDOWN
Rola uma linha para baixo.
SB_LINEUP
Rola uma linha para cima.
SB_PAGEDOWN
Rola uma página para baixo.
SB_PAGEUP
Rola uma página para cima.
SB_THUMBPOSITION
O usuário arrastou a caixa de rolagem (polegar) e liberou o botão do mouse. A HIWORD indica a posição da caixa de rolagem no final da operação de arrastar.
SB_THUMBTRACK
O usuário está arrastando a caixa de rolagem. Essa mensagem é enviada repetidamente até que o usuário libere o botão do mouse. A HIWORD indica a posição para a qual a caixa de rolagem foi arrastada.
SB_TOP
Rola para o canto superior esquerdo.

lParam

Se a mensagem for enviada por um controle de barra de rolagem, esse parâmetro será o identificador do controle da barra de rolagem. Se a mensagem for enviada por uma barra de rolagem padrão, esse parâmetro será NULO.

Valor retornado

Se um aplicativo processar essa mensagem, ela deverá retornar zero.

Comentários

O código de solicitação SB_THUMBTRACK é normalmente usado por aplicativos que fornecem feedbacks à medida que o usuário arrasta a caixa de rolagem.

Se um aplicativo rolar o conteúdo da janela, ele também deverá redefinir a posição da caixa de rolagem usando a função SetScrollPos.

Observe que a mensagem WM_VSCROLL carrega apenas 16 bits de dados de posição da caixa de rolagem. Assim, os aplicativos que dependem exclusivamente de WM_VSCROLL (e WM_HSCROLL) para dados de posição de rolagem têm um valor de posição máximo prático de 65.535.

No entanto, como as funções SetScrollInfo, SetScrollPos, SetScrollRange, GetScrollInfo, GetScrollPos, e GetScrollRange dão suporte a dados de posição da barra de rolagem de 32 bits, há uma maneira de contornar a barreira de 16 bits das mensagens WM_HSCROLL e WM_VSCROLL. Consulte GetScrollInfo para obter uma descrição da técnica.

Requisitos

Requisito Valor
Cliente mínimo com suporte
Windows Vista [somente aplicativos da área de trabalho]
Servidor mínimo com suporte
Windows Server 2003 [somente aplicativos da área de trabalho]
Cabeçalho
Winuser.h (inclui Windows.h)

Confira também

Referência

GetScrollInfo

GetScrollPos

GetScrollRange

SetScrollInfo

SetScrollPos

SetScrollRange

WM_HSCROLL

WM_VSCROLL (Barra de controle)