Compartilhar via


WM_NCXBUTTONDOWN mensagem

Postado quando o usuário pressiona XBUTTON1 ou XBUTTON2 enquanto o cursor está na área nãocliente de uma janela. Esta mensagem é postada na janela que contém o cursor. Se uma janela tiver capturado o mouse, essa mensagem não será postada.

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

#define WM_NCXBUTTONDOWN                0x00AB

Parâmetros

wParam

A palavra de baixa ordem especifica o valor de teste de ocorrência retornado pela função de de DefWindowProc de processar a mensagem de WM_NCHITTEST. Para obter uma lista de valores de teste de ocorrência, consulte WM_NCHITTEST. A palavra de alta ordem indica qual botão foi pressionado. Pode ser um dos valores a seguir.

Valor Significado
XBUTTON1
0x0001
O XBUTTON1 foi pressionado.
XBUTTON2
0x0002
O XBUTTON2 foi pressionado.

lParam

Um ponteiro para uma estrutura POINTS que contém as coordenadas x e y do cursor. As coordenadas são relativas ao canto superior esquerdo da tela.

Valor de retorno

Se um aplicativo processar essa mensagem, ele deverá retornar VERDADEIRO. Para obter mais informações sobre como processar o valor retornado, consulte a seção Comentários.

Observações

O Windows dá suporte a mouses com até cinco botões: esquerda, meio e direita, além de dois botões adicionais chamados XBUTTON1 e XBUTTON2. Os botões XBUTTON1 e XBUTTON2 geralmente estão localizados nas laterais do mouse, próximos à base. Esses botões extras não estão presentes em todos os mouses. Se estiverem presentes, os botões XBUTTON1 e XBUTTON2 geralmente serão mapeados para uma função de aplicativo, como navegação para frente e para trás em um navegador da Web.

Use o código a seguir para obter as informações no parâmetro wParam .

nHittest = GET_NCHITTEST_WPARAM(wParam); 
fwButton = GET_XBUTTON_WPARAM(wParam); 

Você também pode usar o seguinte código para obter as coordenadas x e y de lParam:

xPos = GET_X_LPARAM(lParam); 
yPos = GET_Y_LPARAM(lParam); 

Importante

Não use as macros loword ou HIWORD para extrair as coordenadas x e y da posição do cursor porque essas macros retornam resultados incorretos em sistemas com vários monitores. Sistemas com vários monitores podem ter coordenadas x e y negativas e LOWORD e HIWORD tratar as coordenadas como quantidades não assinadas.

Por padrão, a função DefWindowProc testa o ponto especificado para obter a posição do cursor e executa a ação apropriada. Se apropriado, ele envia a mensagem de WM_SYSCOMMAND para a janela.

Ao contrário das mensagens WM_NCLBUTTONDOWN, WM_NCMBUTTONDOWNe WM_NCRBUTTONDOWN, um aplicativo deverá retornar TRUE dessa mensagem se ele a processar. Isso permitirá que o software que simula essa mensagem em sistemas Windows anteriores ao Windows 2000 determine se o procedimento de janela processou a mensagem ou chamou DefWindowProc processá-la.

Requisitos

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

Consulte também

de referência de

DefWindowProc

GET_X_LPARAM

GET_Y_LPARAM

WM_NCHITTEST

WM_NCXBUTTONDBLCLK

WM_NCXBUTTONUP

WM_SYSCOMMAND

Conceitual

de entrada do mouse

outros recursos

MAKEPOINTS

POINTS