MOUSE_EVENT_RECORD structure

Important

이 문서에서는 더 이상 에코시스템 로드맵의 일부가 되지 않는 콘솔 플랫폼 기능에 대해 설명합니다. 이 콘텐츠를 신제품에서 사용하지 않는 것이 좋지만, 무기한 앞으로도 기존 사용을 계속 지원할 것입니다. 선호하는 최신 솔루션은 플랫폼 간 시나리오에서 최대 호환성을 위해 가상 터미널 시퀀스에 중점을 둡니다. 이 디자인 결정에 대한 자세한 내용은 클래식 콘솔과 가상 터미널 문서에서 확인할 수 있습니다.

콘솔 INPUT_RECORD 구조의 마우스 입력 이벤트에 대해 설명합니다.

구문

typedef struct _MOUSE_EVENT_RECORD {
  COORD dwMousePosition;
  DWORD dwButtonState;
  DWORD dwControlKeyState;
  DWORD dwEventFlags;
} MOUSE_EVENT_RECORD;

멤버

dwMousePosition
콘솔 화면 버퍼의 문자 셀 좌표 측면에서 커서의 위치를 포함하는 COORD 구조체입니다.

dwButtonState
마우스 단추의 상태. 가장 중요한 비트는 맨 왼쪽 마우스 단추에 해당합니다. 다음으로 유의미한 비트는 맨 오른쪽에 있는 마우스 단추에 해당합니다. 다음 비트는 맨 왼쪽에 있는 마우스 단추를 나타냅니다. 비트는 마우스 단추에 왼쪽에서 오른쪽에 해당합니다. 단추를 누른 경우 비트는 1입니다.

다음 상수는 처음 5개의 마우스 단추에 대해 정의됩니다.

의미
FROM_LEFT_1ST_BUTTON_PRESSED 0x0001 맨 왼쪽 마우스 단추입니다.
FROM_LEFT_2ND_BUTTON_PRESSED 0x0004 두 번째 단추는 왼쪽에 있습니다.
FROM_LEFT_3RD_BUTTON_PRESSED 0x0008 왼쪽의 세 번째 단추입니다.
FROM_LEFT_4TH_BUTTON_PRESSED 0x0010 왼쪽의 네 번째 단추입니다.
RIGHTMOST_BUTTON_PRESSED 0x0002 마우스 오른쪽 단추입니다.

dwControlKeyState
제어 키의 상태입니다. 이 멤버는 다음 값 중 하나 이상일 수 있습니다.

의미
CAPSLOCK_ON 0x0080 CAPS LOCK 표시등이 켜집니다.
ENHANCED_KEY 0x0100 키가 향상되었습니다. 발언을 참조 하세요.
LEFT_ALT_PRESSED 0x0002 왼쪽 ALT 키를 누릅니다.
LEFT_CTRL_PRESSED 0x0008 왼쪽 Ctrl 키를 누릅니다.
NUMLOCK_ON 0x0020 NUM LOCK 표시등이 켜집니다.
RIGHT_ALT_PRESSED 0x0001 오른쪽 ALT 키를 누릅니다.
RIGHT_CTRL_PRESSED 0x0004 오른쪽 Ctrl 키를 누릅니다.
SCROLLLOCK_ON 0x0040 SCROLL LOCK 표시등이 켜집니다.
SHIFT_PRESSED 0x0010 SHIFT 키를 눌렀습니다.

dwEventFlags
마우스 이벤트의 유형입니다. 이 값이 0이면 마우스 단추를 누르거나 놓는 것을 나타냅니다. 그렇지 않으면 이 멤버는 다음 값 중 하나입니다.

의미
DOUBLE_CLICK 0x0002 두 번 클릭하는 두 번째 클릭(단추 누름)이 발생했습니다. 첫 번째 클릭은 일반 단추 누르기 이벤트로 반환됩니다.
MOUSE_HWHEELED 0x0008 가로 마우스 휠이 이동되었습니다.

dwButtonState 멤버의 상위 단어에 양수 값이 포함된 경우 휠이 오른쪽으로 회전되었습니다. 그렇지 않으면 휠이 왼쪽으로 회전되었습니다.
MOUSE_MOVED 0x0001 마우스 위치가 변경되었습니다.
MOUSE_WHEELED 0x0004 세로 마우스 휠이 이동되었습니다.

dwButtonState 멤버의 상위 단어에 양수 값이 포함된 경우 휠이 사용자로부터 멀리 떨어진 앞으로 회전되었습니다. 그렇지 않으면 휠이 사용자를 향해 뒤로 회전되었습니다.

설명

마우스 이벤트는 콘솔이 마우스 모드(ENABLE_MOUSE_INPUT)에 있을 때 입력 버퍼에 배치됩니다.

마우스 이벤트는 사용자가 마우스를 이동하거나 마우스 단추 중 하나를 누르거나 놓을 때마다 생성됩니다. 마우스 이벤트는 콘솔 그룹에 키보드 포커스가 있고 커서가 콘솔 창의 테두리 내에 있는 경우에만 콘솔의 입력 버퍼에 배치됩니다.

예제

예제는 입력 버퍼 이벤트 읽기를 참조하세요.

요구 사항

   
지원되는 최소 클라이언트 Windows 2000 Professional[데스크톱 앱만]
지원되는 최소 서버 Windows 2000 Server[데스크톱 앱만]
헤더 WinConTypes.h(WinCon.h를 통해 Windows.h 포함)

참고 항목

COORD

INPUT_RECORD

PeekConsoleInput

ReadConsoleInput

WriteConsoleInput