관리 메뉴

History

[MFC] MAKELPARAM에 대해 본문

MFC/개념 정리

[MFC] MAKELPARAM에 대해

luckybee 2022. 12. 31. 17:06
728x90
반응형

1. 함수의 원형
       
LPARAM MAKELPARAM(WORD wLow, WORD wHigh);​

 

 

2. 함수의 기능
이 매크로 함수는 16비트 크기의 변수인 wLow 와 wHigh의 값을 32비트 크기로 합쳐서 반환하는 함수이다.  wLow는 32비트중에서 하위 16비트에 저장되고 wHigh는 상위 16비트에 저장된다.
윈도우즈 메시지에 포함되어 전달되는 두개의 인자중 하나인 lParam 을 구성할때 사용한다.
 

3. 함수의 반환값
  wLow와 wHigh 값을 32비트 데이터로 합쳐서 반환한다. wLow값이 0x2345 이고  wHigh값이 0x6789라면  0x67892345 라는 값이 반환된다.
 
4. 사용 예제
마우스 좌표를 얻어서 다른 윈도우로 그 좌표를 전달해야하는데 메시지를 이용한다고 가정하자. 하지만, wParam에는 이미 다른 정보를 사용해야하기 때문에 좌표 값을 lParam에 명시해야하는 경우라고 가정하자.
 
마우스 좌표값은 x 좌표, y 좌표로 나누어져 있기 때문에 이 두개의 값을 합쳐서 한개의 값으로 만들어 lParam 에 저장해야하는데 이럴때 이 매크로 함수를 사용하면 된다.
 
CPoint pos;
GetCursorPos(&pos);
SendMessage( LM_USER_DATA, (WPARAM)1, MAKELPARAM(pos.x, pos.y) );
728x90
반응형
Comments