Observação
O acesso a essa página exige autorização. Você pode tentar entrar ou alterar diretórios.
O acesso a essa página exige autorização. Você pode tentar alterar os diretórios.
Esta seção descreve como o sistema fornece entrada do mouse para seu aplicativo e como o aplicativo recebe e processa essa entrada.
Nesta seção
Tópico | Descrição |
---|---|
sobre de entrada do mouse |
Este tópico discute a entrada do mouse. |
usando de entrada do mouse |
Esta seção aborda as tarefas associadas à entrada do mouse. |
Referência de entrada do mouse |
Funções
Nome | Descrição |
---|---|
_TrackMouseEvent | Posta mensagens quando o ponteiro do mouse deixa uma janela ou passa o mouse sobre uma janela por um período de tempo especificado. Essa função chama TrackMouseEvent se existir, caso contrário, a emula. |
BlockInput | Impede que eventos de entrada de teclado e mouse atinjam aplicativos. |
DragDetect | Captura o mouse e rastreia seu movimento até que o usuário libere o botão esquerdo, pressione a tecla ESC ou mova o mouse para fora do retângulo de arrastar ao redor do ponto especificado. A largura e a altura do retângulo de arrastar são especificados pelos valores SM_CXDRAG e SM_CYDRAG retornados pela funçãogetSystemMetrics. |
EnableMouseInPointer | Permite que o mouse atue como um dispositivo apontando. |
EnableWindow | Habilita ou desabilita a entrada do mouse e do teclado na janela ou controle especificados. Quando a entrada é desabilitada, a janela não recebe entrada, como cliques e pressionamentos de tecla. Quando a entrada é habilitada, a janela recebe toda a entrada. |
GetCapture | Recupera um identificador para a janela (se houver) que capturou o mouse. Somente uma janela de cada vez pode capturar o mouse; esta janela recebe a entrada do mouse se o cursor está ou não dentro de suas bordas. |
GetDoubleClickTime | Recupera o tempo atual de clique duplo para o mouse. Um clique duplo é uma série de dois cliques do botão do mouse, o segundo ocorrendo dentro de um horário especificado após o primeiro. O tempo de clique duplo é o número máximo de milissegundos que pode ocorrer entre o primeiro e o segundo clique de um clique duplo. |
GetMouseMovePointsEx | Recupera um histórico de até 64 coordenadas anteriores do mouse ou caneta. |
IsWindowEnabled | Determina se a janela especificada está habilitada para entrada de mouse e teclado. |
releaseCapture | Libera a captura do mouse de uma janela no thread atual e restaura o processamento normal de entrada do mouse. Uma janela que capturou o mouse recebe toda a entrada do mouse, independentemente da posição do cursor, exceto quando um botão do mouse é clicado enquanto o ponto de acesso do cursor está na janela de outro thread. |
SendInput | Sintetiza pressionamentos de teclas, movimentos do mouse e cliques no botão. |
SetCapture | Define a captura do mouse para a janela especificada que pertence ao thread atual.
SetCapture captura a entrada do mouse quando o mouse está sobre a janela de captura ou quando o botão do mouse foi pressionado enquanto o mouse estava sobre a janela de captura e o botão ainda está para baixo. Somente uma janela de cada vez pode capturar o mouse. Se o cursor do mouse estiver sobre uma janela criada por outro thread, o sistema direcionará a entrada do mouse para a janela especificada somente se um botão do mouse estiver inativo. |
SetDoubleClickTime | Define o tempo de clique duplo para o mouse. Um clique duplo é uma série de dois cliques de um botão do mouse, o segundo ocorrendo dentro de um horário especificado após o primeiro. O tempo de clique duplo é o número máximo de milissegundos que pode ocorrer entre o primeiro e o segundo cliques de um clique duplo. |
SwapMouseButton | Inverte ou restaure o significado dos botões do mouse para a esquerda e para a direita. |
TrackMouseEvent | Posta mensagens quando o ponteiro do mouse deixa uma janela ou passa o mouse sobre uma janela por um período de tempo especificado. |
A função a seguir está obsoleta.
Função | Descrição |
---|---|
mouse_event | Sintetiza o movimento do mouse e cliques no botão. |
Notificações
Nome | Descrição |
---|---|
WM_APPCOMMAND | Notifica uma janela em que o usuário gerou um evento de comando do aplicativo, por exemplo, clicando em um botão de comando do aplicativo usando o mouse ou digitando uma tecla de comando do aplicativo no teclado. |
WM_CAPTURECHANGED | Enviado para a janela que está perdendo a captura do mouse. |
WM_LBUTTONDBLCLK | Postado quando o usuário clica duas vezes no botão esquerdo 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 será postada na janela que capturou o mouse. |
WM_LBUTTONDOWN | Postado quando o usuário pressiona o botão esquerdo 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 será postada na janela que capturou o mouse. |
WM_LBUTTONUP | Postado quando o usuário libera o botão esquerdo 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 será postada na janela que capturou o mouse. |
WM_MBUTTONDBLCLK | Postado quando o usuário clica duas vezes no botão do mouse do meio 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 será postada na janela que capturou o mouse. |
WM_MBUTTONDOWN | Postado quando o usuário pressiona o botão do mouse do meio 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 será postada na janela que capturou o mouse. |
WM_MBUTTONUP | Postado quando o usuário libera o botão do mouse do meio 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 será postada na janela que capturou o mouse. |
WM_MOUSEACTIVATE | Enviado quando o cursor está em uma janela inativa e o usuário pressiona um botão do mouse. A janela pai receberá essa mensagem somente se a janela filho a passar para a funçãoDefWindowProc. |
WM_MOUSEHOVER | Postado em uma janela quando o cursor passa o mouse sobre a área do cliente da janela pelo período de tempo especificado em uma chamada anterior para TrackMouseEvent. |
WM_MOUSEHWHEEL | Enviado para a janela de foco quando a roda de rolagem horizontal do mouse é inclinada ou girada. A funçãoDefWindowProcpropaga a mensagem para o pai da janela. Não deve haver encaminhamento interno da mensagem, pois DefWindowProc propagar a cadeia pai até encontrar uma janela que a processe. |
WM_MOUSELEAVE | Postado em uma janela quando o cursor deixa a área do cliente da janela especificada em uma chamada anterior para TrackMouseEvent. |
WM_MOUSEMOVE | Postado em uma janela quando o cursor se move. Se o mouse não for capturado, a mensagem será postada na janela que contém o cursor. Caso contrário, a mensagem será postada na janela que capturou o mouse. |
WM_MOUSEWHEEL | Enviado para a janela de foco quando a roda do mouse é girada. A função DefWindowProc propaga a mensagem para o pai da janela. Não deve haver encaminhamento interno da mensagem, pois DefWindowProc propagar a cadeia pai até encontrar uma janela que a processe. |
WM_NCHITTEST | Enviado para uma janela para determinar qual parte da janela corresponde a uma coordenada de tela específica. Isso pode acontecer, por exemplo, quando o cursor se move, quando um botão do mouse é pressionado ou liberado ou em resposta a uma chamada para uma função como WindowFromPoint. Se o mouse não for capturado, a mensagem será enviada para a janela abaixo do cursor. Caso contrário, a mensagem será enviada para a janela que capturou o mouse. |
WM_NCLBUTTONDBLCLK | Postado quando o usuário clica duas vezes no botão esquerdo do mouse enquanto o cursor está dentro da área nãocliente de uma janela. Esta mensagem é postada na janela que contém o cursor. Se uma janela capturou o mouse, essa mensagem não será postada. |
WM_NCLBUTTONDOWN | Postado quando o usuário pressiona o botão esquerdo do mouse enquanto o cursor está dentro da área nãocliente de uma janela. Esta mensagem é postada na janela que contém o cursor. Se uma janela capturou o mouse, essa mensagem não será postada. |
WM_NCLBUTTONUP | Postado quando o usuário libera o botão esquerdo do mouse enquanto o cursor está dentro da área nãocliente de uma janela. Esta mensagem é postada na janela que contém o cursor. Se uma janela capturou o mouse, essa mensagem não será postada. |
WM_NCMBUTTONDBLCLK | Postado quando o usuário clica duas vezes no botão do mouse do meio enquanto o cursor está dentro da área nãocliente de uma janela. Esta mensagem é postada na janela que contém o cursor. Se uma janela capturou o mouse, essa mensagem não será postada. |
WM_NCMBUTTONDOWN | Postado quando o usuário pressiona o botão do mouse do meio enquanto o cursor está dentro da área nãocliente de uma janela. Esta mensagem é postada na janela que contém o cursor. Se uma janela capturou o mouse, essa mensagem não será postada. |
WM_NCMBUTTONUP | Postado quando o usuário libera o botão do mouse do meio enquanto o cursor está dentro da área nãocliente de uma janela. Esta mensagem é postada na janela que contém o cursor. Se uma janela capturou o mouse, essa mensagem não será postada. |
WM_NCMOUSEHOVER | Postado em uma janela quando o cursor passa o mouse sobre a área nãocliente da janela pelo período de tempo especificado em uma chamada anterior paraTrackMouseEvent. |
WM_NCMOUSELEAVE | Postado em uma janela quando o cursor deixa a área nãocliente da janela especificada em uma chamada anterior paraTrackMouseEvent. |
WM_NCMOUSEMOVE | Postado em uma janela quando o cursor é movido dentro da área nãocliente da janela. Esta mensagem é postada na janela que contém o cursor. Se uma janela capturou o mouse, essa mensagem não será postada. |
WM_NCRBUTTONDBLCLK | Postado quando o usuário clica duas vezes no botão direito do mouse enquanto o cursor está dentro da área nãocliente de uma janela. Esta mensagem é postada na janela que contém o cursor. Se uma janela capturou o mouse, essa mensagem não será postada. |
WM_NCRBUTTONDOWN | Postado quando o usuário pressiona o botão direito do mouse enquanto o cursor está dentro da área nãocliente de uma janela. Esta mensagem é postada na janela que contém o cursor. Se uma janela capturou o mouse, essa mensagem não será postada. |
WM_NCRBUTTONUP | Postado quando o usuário libera o botão direito do mouse enquanto o cursor está dentro da área nãocliente de uma janela. Esta mensagem é postada na janela que contém o cursor. Se uma janela capturou o mouse, essa mensagem não será postada. |
WM_NCXBUTTONDBLCLK | Postado quando o usuário clica duas vezes 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 capturou o mouse, essa mensagem não será postada. |
WM_NCXBUTTONDOWN | 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 capturou o mouse, essa mensagem não será postada. |
WM_NCXBUTTONUP | Postado quando o usuário libera 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 capturou o mouse, essa mensagem não será postada. |
WM_RBUTTONDBLCLK | 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 será postada na janela que capturou o mouse. |
WM_RBUTTONDOWN | Postado quando o usuário pressiona o 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 será postada na janela que capturou o mouse. |
WM_RBUTTONUP | Postado quando o usuário libera o 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 será postada na janela que capturou o mouse. |
WM_XBUTTONDBLCLK | Postado quando o usuário clica duas vezes XBUTTON1 ou XBUTTON2 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 será postada na janela que capturou o mouse. |
WM_XBUTTONDOWN | Postado quando o usuário pressiona XBUTTON1 ou XBUTTON2 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 será postada na janela que capturou o mouse. |
WM_XBUTTONUP | Postado quando o usuário libera XBUTTON1 ou XBUTTON2 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 será postada na janela que capturou o mouse. |
Estruturas
Nome | Descrição |
---|---|
HARDWAREINPUT | Contém informações sobre uma mensagem simulada gerada por um dispositivo de entrada diferente de um teclado ou mouse. |
de ENTRADA | Contém informações usadas para sintetizar eventos de entrada, como pressionamentos de tecla, movimento do mouse e cliques do mouse. |
LASTINPUTINFO | Contém a hora da última entrada. |
MOUSEINPUT | Contém informações sobre um evento simulado do mouse. |
MOUSEMOVEPOINT | Contém informações sobre a localização do mouse nas coordenadas da tela. |
TRACKMOUSEEVENT | Usada pela função TrackMouseEvent para acompanhar quando o ponteiro do mouse deixa uma janela ou passa o mouse sobre uma janela por um período especificado. |