WM_MOVE

Àμö

wParam : »ç¿ëµÇÁö ¾Ê´Â´Ù.

LOWORD(lParam) : À©µµ¿ìÀÇ XÁÂÇ¥.

HIWORD(lParam) : À©µµ¿ìÀÇ Y ÁÂÇ¥. ÀÌ ÁÂÇ¥´Â ¿À¹ö·¦µå, ÆË¾÷ À©µµ¿ìÀÇ °æ¿ì È­¸é ÁÂÇ¥À̸ç Â÷Àϵå À©µµ¿ì´Â ºÎ¸ð À©µµ¿ìÀÇ ÀÛ¾÷ ¿µ¿ªÀ» ±âÁØÀ¸·Î ÇÑ ÁÂÇ¥ÀÌ´Ù.

¼³¸í

À©µµ¿ìÀÇ À§Ä¡°¡ º¯°æµÉ ¶§¸¶´Ù ÀÌ ¸Þ½ÃÁö°¡ º¸³»Áø´Ù. ÀϹÝÀûÀ¸·Î À©µµ¿ìÀÇ À§Ä¡ º¯°æ¿¡ µû¸¥ 󸮴 ÇÏÁö ¾Ê±â ¶§¹®¿¡ ÀÌ ¸Þ½ÃÁö´Â Àß »ç¿ëµÇÁö ¾ÊÁö¸¸ À§Ä¡¿¡ µû¶ó À©µµ¿ìÀÇ ¸ð¾çÀ̳ª µ¿ÀÛ¿¡ Â÷À̰¡ Àְųª Ưº°ÇÑ Ã³¸®°¡ ÇÊ¿äÇÏ´Ù¸é ÀÌ ¸Þ½ÃÁö¸¦ »ç¿ëÇÑ´Ù. ÀÌ ¸Þ½ÃÁö´Â À©µµ¿ìÀÇ À§Ä¡°¡ ¿ÏÀüÈ÷ ¿Å°ÜÁø ÈÄ¿¡ º¸³»Áö¹Ç·Î Àμö·Î Àü´ÞµÇ´Â ÁÂÇ¥´Â À̵¿ ÈÄÀÇ ÁÂÇ¥ÀÌ´Ù.

¸®ÅÏ

ÀÌ ¸Þ½ÃÁö¸¦ ó¸®ÇßÀ¸¸é 0ÀÌ ¾Æ´Ñ °ªÀ» ¸®ÅÏÇØ¾ß ÇÑ´Ù.

¿¹Á¦

¿¹Á¦ 1

´ÙÀ½ ¿¹Á¦´Â ÆË¾÷ À©µµ¿ì¸¦ Çϳª »ý¼ºÇÏ°í ¸ÞÀÎ À©µµ¿ìÀÇ ¿À¸¥ÂÊ¿¡ ÆË¾÷ À©µµ¿ì¸¦ ¹ÐÂø½ÃŲ´Ù. ±×¸®°í ¸ÞÀÎ À©µµ¿ìÀÇ À§Ä¡°¡ º¯°æµÉ ¶§¸¶´Ù ÆË¾÷ À©µµ¿ì¸¦ °°ÀÌ À̵¿½ÃÅ´À¸·Î½á Ç×»ó ºÎ¸ð À©µµ¿ìÀÇ ¿À¸¥ÂÊ¿¡ ÆË¾÷ À©µµ¿ì¸¦ ¹èÄ¡Çϵµ·Ï ÇÑ´Ù. ±×·¯³ª ÆË¾÷ À©µµ¿ì¸¸ µû·Î À̵¿ÇÒ ¶§´Â ¾Æ¹«·± 󸮵µ ÇÏÁö ¾Ê±â ¶§¹®¿¡ ÆË¾÷ À©µµ¿ì¸¦ Á÷Á¢ ¿Å±â´Â °ÍÀº °¡´ÉÇÏ´Ù.

HWND hPopup;
LRESULT CALLBACK WndProc(HWND hWnd,UINT iMessage,WPARAM wParam,LPARAM lParam)
{
	HDC hdc;
	PAINTSTRUCT ps;
	RECT rt;
	char Mes[]="ÆË¾÷ À©µµ¿ìÀÇ ¼ÒÀ¯ÀÚ";

	switch(iMessage) {
	case WM_CREATE:
		hPopup=CreateWindow("ChildCls","ÆË¾÷ À©µµ¿ì",
			WS_POPUP | WS_CAPTION | WS_SYSMENU | WS_VISIBLE,
			0,0,200,200,
			hWnd,(HMENU)NULL,g_hInst,NULL);
		return 0;
	case WM_PAINT:
		hdc=BeginPaint(hWnd, &ps);
		TextOut(hdc,5,5,Mes,lstrlen(Mes));
		EndPaint(hWnd, &ps);
		return 0;
	case WM_MOVE:
		GetWindowRect(hWnd, &rt);
		SetWindowPos(hPopup, HWND_NOTOPMOST, rt.right, rt.top, 0, 0, SWP_NOSIZE);
		return 0;
	case WM_DESTROY:
		PostQuitMessage(0);
		return 0;
	}
	return(DefWindowProc(hWnd,iMessage,wParam,lParam));
}

LRESULT CALLBACK ChildProc(HWND hWnd,UINT iMessage,WPARAM wParam,LPARAM lParam)
{
	HDC hdc;
	PAINTSTRUCT ps;
	static char Mes[128];

	switch(iMessage) {
	case WM_MOVE:
		wsprintf(Mes,"X=%d, Y=%d",LOWORD(lParam), HIWORD(lParam));
		InvalidateRect(hWnd,NULL,TRUE);
	case WM_PAINT:
		hdc=BeginPaint(hWnd, &ps);
		TextOut(hdc,5,5,Mes,lstrlen(Mes));
		EndPaint(hWnd, &ps);
		return 0;
	}
	return(DefWindowProc(hWnd,iMessage,wParam,lParam));
}

½ÇÇàÁßÀÇ ¸ð½ÀÀº ´ÙÀ½°ú °°´Ù.

ºÎ¸ð À©µµ¿ì°¡ WM_MOVE ¸Þ½ÃÁö¸¦ ¹Þ¾ÒÀ» ¶§ ÆË¾÷ À©µµ¿ì¸¦ ºÎ¸ð À©µµ¿ìÀÇ ¿À¸¥ÂÊÀ¸·Î °­Á¦·Î À̵¿½Ã۵µ·Ï ÇÏ¿´´Ù. ÆË¾÷ À©µµ¿ì´Â ÀÚ½ÅÀÇ À§Ä¡°¡ º¯°æµÉ ¶§¸¶´Ù º¯°æµÈ À§Ä¡¸¦ ÀÛ¾÷ ¿µ¿ª¿¡ ¹®ÀÚ¿­·Î º¸¿©ÁØ´Ù.

Ç÷§Æû

95ÀÌ»ó

ÂüÁ¶

 


written by http://www.winapi.co.kr