본문으로 바로가기
반응형

1. 키보드 입력 관련 메시지
WM_CHAR                   문자만 전달된다.
WM_KEYDOWN           문자를 포함한 모든 키가 가상 키코드로 전달된다.
WM_SYSKEYDOWN    시스템 키보드 메시지는 Alt 키와 함께 눌러지는 키보드 메시지들이며 잘 사용되지 않는다. 
WM_SYSKEYUP          만일 사용하게 될 경우 DefWindowProc로 넘겨줘야 한다.
WM_SYSCHAR            그렇지 않으면 Alt 키와 함께 동작하는 모든 키보드 조합이 먹통이 되어버린다.
WM_DEADCHAR         유럽의 악센트 문자와 움라우트(결합) 문자 입력을 위한 메시지이다.
WM_SYSDEADCHAR 

2. 자주 사용되는 키보드 입력 메시지별 파라미터 정의
WM_CHAR.wParam = 입력된 문자의 아스키 코드 값이 전달된다.
WM_CHAR.lParam = 비트별로 복잡한 정보가 전달되는데 잘 사용되지 않으므로 필요한 경우 따로 찾아볼 것을 권유한다.

WM_KEYDOWN.wParam = 입력된 키의 가상 키코드 값이 전달된다. 문자 및 숫자는 아스키 코드값과 같다.
WM_KEYDOWN.lParam = WM_CHAR.lParam과 동일하나 역시 잘 사용되지 않는다.

BOOL TranslateMessage(MSG &lpMsg) 
- 키를 입력받았을 경우 문자키 입력 메시지인 WM_CHAR를 만들어내기 위해 존재한다.
- 만약 WM_CHAR 메시지를 받을 필요가 없는 프로그램이라면 메시지 루프에서 생략해도 된다.

 포커스를 가진 컨트롤만이 키보드 입력 메시지를 전달받을 수 있다.

 

 

'관심 분야 > Windows API' 카테고리의 다른 글

[WinAPI] 무효 영역  (0) 2022.10.08
[WinAPI] WinAPI 기본 코드  (0) 2022.10.07