/*
WinMain부분 부모 윈도우 클래스 등록, 자식 윈도우 클래스 등록
*/
HWND childHwnd[2]; //자식 윈도우 핸들입니다.
/*
부모 윈도우 프로시져부분 - 그냥 메뉴 선택하면 윈도우 분할해주고(팝업이아닌) 자식 윈도우 생성하는 코드
자식 윈도우는 두갠데 그 두개의 윈도우 메시지를 처리하는 함수는 아래 ChildWndProc한개 입니다.
*/
LRESULT CALLBACK ChildWndProc(HWND hwnd, UINT iMsg, WPARAM wParam, LPARAM lParam)
{
HDC hdc;
static int x[2] = { 20, 20 }, y[2] = { 20, 20 }, flag[2];
int select;
static char a[10];
switch (iMsg)
{
case WM_CREATE:
break;
case WM_TIMER:
x[wParam] = x[wParam] + 20; //이해안되는 부분 wParma?
hdc = GetDC(hwnd);
wsprintf(a, "wParam=%d", wParam);
TextOut(hdc, 100, 100, a, 10);
Ellipse(hdc, x[wParam] - 20, y[wParam] - 20, x[wParam] + 20, y[wParam] + 20);
ReleaseDC(hwnd, hdc);
break;
case WM_LBUTTONDOWN:
if (hwnd == childHwnd[0])
select = 0;
else
select = 1;
flag[select] = 1 - flag[select];
if (flag[select])
SetTimer(hwnd, select, 100, NULL);
else
KillTimer(hwnd, select);
break;
case WM_DESTROY:
return 0;
}
return DefMDIChildProc(hwnd, iMsg, wParam, lParam);
}
/*************
위 코드는 그냥 위 아래로 윈도우 분할 해 놓고 위쪽 클릭하면 위쪽에서 원이 그려지고 아래쪽 클릭하면 원이 그려지는 단순한 예제입니다.
**************/
wParma이 부가적인 정보를 준다는 것은 알고 있는데 이렇게 뭔가 부가적인 HIWORD LOWORD라는 처리나 다른 메시지와 연관된 해석이 아닌 저렇게 단일 적으로 사용했을 때, 어떤 식으로 사용되는지 궁금합니다.
아니면 자식 윈도우로 생성 되었고 저런 상황에서만 마치 자식 윈도우에 붙여진 번호처럼 쓰이는 건가요?