Win32 API에서 MK_CONTROL과 VK_CONTROL의 차이점은 무엇입니까?Win32 API에서 MK_CONTROL과 VK_CONTROL의 차이점은 무엇입니까?
먼저 정의 된 값을 검사했습니다.
MK_CONTROL : 0x0008에 VK_CONTROL : 0x11을
둘째, 나는이 같은 내 간단한 코드에서 테스트.
case WM_MOUSEMOVE:
if(wParam & MK_CONTROL) // This works here.
abort();
if(wParam & VK_CONTROL) // This doesn't work here.
abort();
case WM_KEYDOWN:
if(wParam & MK_CONTROL) // This doesn't work here.
abort();
if(wParam & VK_CONTROL) // This works here.
abort();
case WM_LBUTTONDOWN:
if(wParam & MK_CONTROL) // This doens't work here.
abort();
if(wParam == VK_CONTROL) // This doesn't work here.
abort();
wParam 값은 마우스 장치의 상태에 따라 달라질 수 있습니까?
MK_ ..와 VK_ ..의 차이점은 무엇입니까?
VK_CONTROL은 Ctrl 키의 가상 키 번호입니다. WM_KEYDOWN과 같은 키보드 메시지에서만 유효합니다. MK_CONTROL은 마우스 메시지에서만 유효합니다. 메시지가 생성 될 때 Ctrl 키가 눌러져 있음을 나타내는 플래그입니다. 클릭하는 동안 Ctrl 키를 누른 상태로 사용자를 감지하는 데 도움이됩니다. Ctrl + 클릭은 선택 항목을 확장하는 데 사용됩니다. –
감사합니다. 이제 나는 이해했다! – Jenix