관리 메뉴

ㄴrㅎnㅂrㄹrㄱi

WM_KEYUP (밀리고 있던 비시스템키가 떼어 놓아졌을 경우에...) 본문

API 관련/Win32 API 함수

WM_KEYUP (밀리고 있던 비시스템키가 떼어 놓아졌을 경우에...)

님투 2007. 11. 9. 01:31
반응형

WM_KEYUP

WM_KEYUP 메세지는, 밀리고 있던 비시스템키가 떼어 놓아졌을 경우에, 키보드 포커스를 가지는 윈도우에 포스트됩니다.비시스템키란, [alt] 키가 밀리지 않을 때에 밀린 키입니다.

윈도우는, 윈도우 프로시저를 개입시켜 이 메세지를 받아들입니다.

#define  WM_KEYUP      0x0101

nVirtKey = wParam;         // 가상 키코드
lKeyData = lParam;         // 키 데이터

파라미터

nVirtKey

wParam 파라미터의 값.

비시스템키의 가상 키코드하지만 지정됩니다.

lKeyData

lParam 파라미터의 값.

리피트 카운트 (유저가 키를 계속 눌렀을 때에 반복하는 키 조작의 회수) , 스캔 코드, 키 변환 코드, 직전의 키 상태, 및 문맥 코드가 지정됩니다.

비트 의미
0 ~ 15

현재의 메세지의 리피트 카운트가 지정됩니다.이것은, 유저가 키를 계속 누른 것 에 의해 자동적으로 반복해진 키스트로크(keystroke)의 회수입니다. WM_KEYUP 메세지에서는 항상 1 (이)가 됩니다.

16 ~ 23

스캔 코드가 지정됩니다.이 값은 OEM 의존입니다.

24

확장 키가 밀렸는지가 지정됩니다.확장 키의 경우는 1 하지만, 그 이외의 키에서는 0 하지만 지정됩니다.

25 ~ 28

사용되지 않습니다.

29

문맥 코드가 격납됩니다. WM_KEYUP 메세지에서는 항상 0 (이)가 됩니다.

30

직전의 키 상태가 지정됩니다. WM_KEYUP 메세지에서는 항상 1 (이)가 됩니다.

31

변환 상태가 지정됩니다. WM_KEYUP 메세지에서는 항상 1 (이)가 됩니다.

해설

[f10] 키 또는 [Alt] 키가 떼어 놓아졌을 경우는, DefWindowProc 함수는 톱 레벨 윈도우에 WM_SYSCOMMAND 메세지를 보냅니다.이 때의 wParam 파라미터에는 SC_KEYMENU 하지만 세트 됩니다.

대응 정보

Windows 95 이후 / Windows NT 3.1 이후

반응형
Comments