WM_RBUTTONDBLCLK mensagem

Postado quando o usuário clica duas vezes no botão direito do mouse enquanto o cursor está na área do cliente de uma janela. Se o mouse não for capturado, a mensagem será postada na janela abaixo do cursor. Caso contrário, a mensagem é postada na janela que capturou o mouse.

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

#define WM_RBUTTONDBLCLK                0x0206

Parâmetros

wParam

Indica se várias chaves virtuais estão inativas. Esse parâmetro pode ser um ou mais dos seguintes valores.

Valor Significado
MK_CONTROL
0x0008
A chave CTRL está inoperante.
MK_LBUTTON
0x0001
O botão esquerdo do mouse está inativo.
MK_MBUTTON
0x0010
O botão do mouse do meio está inativo.
MK_RBUTTON
0x0002
O botão direito do mouse está inativo.
MK_SHIFT
0x0004
A chave SHIFT está inoperante.
MK_XBUTTON1
0x0020
O primeiro botão X está inativo.
MK_XBUTTON2
0x0040
O segundo botão X está inativo.

lParam

A palavra de baixa ordem especifica a coordenada x do cursor. A coordenada é relativa ao canto superior esquerdo da área do cliente.

A palavra de alta ordem especifica a coordenada y do cursor. A coordenada é relativa ao canto superior esquerdo da área do cliente.

Valor retornado

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

Comentários

Somente janelas que têm o estilo CS_DBLCLKS podem receber WM_RBUTTONDBLCLK mensagens, que o sistema gera sempre que o usuário pressiona, libera e pressiona novamente o botão direito do mouse dentro do limite de tempo de clique duplo do sistema. Clicar duas vezes no botão direito do mouse gera quatro mensagens: WM_RBUTTONDOWN, WM_RBUTTONUP, WM_RBUTTONDBLCLK e WM_RBUTTONUP novamente.

Use o seguinte código para obter a posição horizontal e vertical:

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

Conforme observado acima, a coordenada x está na ordem baixa aquém do valor retornado; a coordenada y está no curto de alta ordem (ambos representam valores assinados porque podem levar valores negativos em sistemas com vários monitores). Se o valor retornado for atribuído a uma variável, você poderá usar a macro MAKEPOINTS para obter uma estrutura POINTS do valor retornado. Você também pode usar a macro GET_X_LPARAM ou GET_Y_LPARAM para extrair a coordenada x ou y.

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 tratam as coordenadas como quantidades não assinadas.

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)

Confira também

Referência

GET_X_LPARAM

GET_Y_LPARAM

GetCapture

GetDoubleClickTime

Setcapture

SetDoubleClickTime

WM_RBUTTONDOWN

WM_RBUTTONUP

Conceitual

Entrada do mouse

Outros recursos

MAKEPOINTS

PONTOS