Compartilhar via


estrutura MOUSE_INPUT_DATA (ntddmou.h)

MOUSE_INPUT_DATA contém um pacote de dados de entrada do mouse.

Sintaxe

typedef struct _MOUSE_INPUT_DATA {
  USHORT UnitId;
  USHORT Flags;
  union {
    ULONG Buttons;
    struct {
      USHORT ButtonFlags;
      USHORT ButtonData;
    };
  };
  ULONG  RawButtons;
  LONG   LastX;
  LONG   LastY;
  ULONG  ExtraInformation;
} MOUSE_INPUT_DATA, *PMOUSE_INPUT_DATA;

Membros

UnitId

Especifica o número da unidade do dispositivo do mouse. Um nome de dispositivo do mouse tem o formato \Device\PointerPortN, em que o sufixo N é o número de unidade do dispositivo. Por exemplo, um dispositivo, cujo nome é \Device\PointerPort0, tem um número de unidade zero e um dispositivo, cujo nome é \Device\PointerPort1, tem um número de unidade de um.

Flags

Especifica um OR bit a bit de um ou mais dos sinalizadores de indicador do mouse a seguir.

Valor Significado
MOUSE_MOVE_RELATIVE O LastX e o LastY são definidos em relação ao local anterior.
MOUSE_MOVE_ABSOLUTE Os valores LastX e LastY são definidos como valores absolutos.
MOUSE_VIRTUAL_DESKTOP As coordenadas do mouse são mapeadas para a área de trabalho virtual.
MOUSE_ATTRIBUTES_CHANGED Os atributos do mouse foram alterados. Os outros dados na estrutura não são usados.
MOUSE_MOVE_NOCOALESCE (Windows Vista e posterior) WM_MOUSEMOVE mensagens de notificação não serão agrupadas. Por padrão, essas mensagens são agrupadas.

Para obter mais informações sobre WM_MOUSEMOVE mensagens de notificação, consulte a documentação do Microsoft Software Development Kit (SDK)

Buttons

Especifica os valores ButtonFlags e ButtonData . O Mouclass usa Botões em sua rotina de serviço de interrupção para fazer um acesso rápido de memória única a ButtonFlags e ButtonData.

ButtonFlags

Especifica o estado de transição dos botões do mouse.

Sinalizador Significado
MOUSE_LEFT_BUTTON_DOWN O botão esquerdo do mouse foi alterado para baixo.
MOUSE_LEFT_BUTTON_UP O botão esquerdo do mouse foi alterado para cima.
MOUSE_RIGHT_BUTTON_DOWN O botão direito do mouse foi alterado para baixo.
MOUSE_RIGHT_BUTTON_UP O botão direito do mouse foi alterado para cima.
MOUSE_MIDDLE_BUTTON_DOWN O botão do mouse do meio foi alterado para baixo.
MOUSE_MIDDLE_BUTTON_UP O botão do mouse do meio foi alterado para cima.
MOUSE_BUTTON_4_DOWN O quarto botão do mouse foi alterado para baixo.
MOUSE_BUTTON_4_UP O quarto botão do mouse foi alterado para cima.
MOUSE_BUTTON_5_DOWN O quinto botão do mouse foi alterado para baixo.
MOUSE_BUTTON_5_UP O quinto botão do mouse foi alterado para cima.
MOUSE_WHEEL Os dados da roda do mouse estão presentes.
MOUSE_HWHEEL Os dados da roda horizontal do mouse estão presentes.

ButtonData

Especifica os dados da roda do mouse, se MOUSE_WHEEL estiver definido em ButtonFlags.

RawButtons

Especifica o estado bruto dos botões do mouse. O subsistema Win32 não usa esse membro.

LastX

Especifica o movimento relativo ou absoluto assinado na direção x.

LastY

Especifica o movimento relativo ou absoluto assinado na direção y.

ExtraInformation

Especifica informações específicas do dispositivo.

Comentários

Em resposta a solicitações de IRP_MJ_READ (Mouclass), o Mouclass transfere zero ou mais estruturas MOUSE_INPUT_DATA de sua fila de dados interna para o buffer de subsistema do Microsoft Win32.

Requisitos

Requisito Valor
Cabeçalho ntddmou.h (inclua Ntddmou.h)

Confira também

IRP_MJ_READ (Mouclass)

MouseClassServiceCallback