Mensagem WM_HSCROLL

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

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

WM_HSCROLL

    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. Essa palavra pode ser um dos seguintes valores.

Valor Significado
SB_ENDSCROLL
Encerra a rolagem.
SB_LEFT
Rola para o canto superior esquerdo.
SB_RIGHT
Role para o canto inferior direito.
SB_LINELEFT
Rola para a esquerda por uma unidade.
SB_LINERIGHT
Rola para a direita por uma unidade.
SB_PAGELEFT
Rola para a esquerda de acordo com a largura da janela.
SB_PAGERIGHT
Rola para a direita de acordo com a largura da janela.
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.

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_HSCROLL carrega apenas 16 bits de dados de posição da caixa de rolagem. Assim, os aplicativos que dependem exclusivamente de WM_HSCROLL (e WM_VSCROLL) 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 (barra de controle)

WM_VSCROLL