¿øÇü |
BOOL ClientToScreen(HWND hWnd, LPPOINT lpPoint); |
MFC ¿øÇü |
void CWnd::ClientToScreen( LPPOINT lpPoint ) const; |
Àμö |
¢ºhWnd : ÁÂÇ¥ º¯È¯¿¡ »ç¿ëµÉ À©µµ¿ìÀÇ ÇÚµé. lpPoint¸¦ ÀÌ À©µµ¿ìÀÇ ÀÛ¾÷ ¿µ¿ª ÁÂÇ¥·Î ÀνÄÇÑ´Ù. ¢ºlpPoint : º¯È¯ ´ë»ó ÁÂÇ¥ÀÌ¸ç ³í¸® ´ÜÀ§°¡ ¾Æ´Ñ ÀåÄ¡ ´ÜÀ§(Çȼ¿)ÀÌ´Ù. |
¸®ÅÏ |
¼º°øÇϸé 0ÀÌ ¾Æ´Ñ °ªÀ» ¸®ÅÏÇÏ¸ç ½ÇÆÐÇϸé 0À» ¸®ÅÏÇÑ´Ù. |
¼³¸í |
hWndÀÇ ÀÛ¾÷ ¿µ¿ª ¿øÁ¡À» ±âÁØÀ¸·Î ÇÏ´Â ÁÂÇ¥ lpPoint¸¦ Àüü ȸéÀ» ±âÁØÀ¸·Î ÇÏ´Â ÁÂÇ¥·Î º¯È¯ÇÑ´Ù. hWndÀ©µµ¿ìÀÇ ÀÛ¾÷ ¿µ¿ª ¿øÁ¡ÀÇ È¸é ÁÂÇ¥°¡ cx, cyÀÏ ¶§ lpPoint´Â lpPoint.x + cx, lpPoint + cy·Î º¯È¯µÈ´Ù. ÀÛ¾÷ ¿µ¿ªÀÇ ÁÂÇ¥¸¦ ¹Þ¾Æ GetCurosrPos, MoveWindow µî°ú °°ÀÌ È¸é ÁÂÇ¥¸¦ ¿ä±¸ÇÏ´Â ÇÔ¼ö·Î ÁÂÇ¥¸¦ Àü´ÞÇϱâ À§ÇØ ÀÌ ÇÔ¼ö¸¦ »ç¿ëÇÑ´Ù. ´ÙÀ½ ¿¹Á¦´Â ¸¶¿ì½º ¿ÞÂÊ ¹öÆ°À» ´©¸¦ ¶§ ¸¶¿ì½º Ä¿¼¸¦ °Á¦·Î (200,200)À¸·Î ¿Å±ä´Ù. LRESULT CALLBACK WndProc(HWND hWnd,UINT iMessage,WPARAM wParam,LPARAM lParam) { HDC hdc; PAINTSTRUCT ps; POINT pt; switch(iMessage) { case WM_LBUTTONDOWN: pt.x=200; pt.y=200; ClientToScreen(hWnd,&pt); SetCursorPos(pt.x,pt.y); return 0; case WM_PAINT: hdc=BeginPaint(hWnd, &ps); Rectangle(hdc,200-5,200-5,200+5,200+5); EndPaint(hWnd, &ps); return 0; case WM_DESTROY: PostQuitMessage(0); return 0; } return(DefWindowProc(hWnd,iMessage,wParam,lParam)); } ¸¶¿ì½º Ä¿¼ÀÇ À§Ä¡¸¦ ¿Å±æ ¶§´Â SetCursorPos ÇÔ¼ö¸¦ »ç¿ëÇϴµ¥ ÀÌ ÇÔ¼ö´Â È¸é ¿øÁ¡À» ±âÁØÀ¸·Î ÇÏ´Â ÁÂÇ¥¸¦ ¿ä±¸ÇϹǷΠClientToScreen ÇÔ¼ö·Î ÀÛ¾÷ ¿µ¿ª ÁÂÇ¥¸¦ ȸé ÁÂÇ¥·Î º¯È¯ÇÑ ÈÄ SetCurosrPos ÇÔ¼ö¸¦ È£ÃâÇØ¾ß ÇÑ´Ù. ±×·¸Áö ¾ÊÀ¸¸é ¸¶¿ì½º Ä¿¼´Â ¹«Á¶°Ç ȸé»óÀÇ (200,200)À¸·Î À̵¿ÇÑ´Ù. |
Âü°íÇÔ¼ö |
ScreenToClient : ȸé ÁÂÇ¥¸¦ ÀÛ¾÷ ¿µ¿ª ÁÂÇ¥·Î º¯È¯ÇÑ´Ù. |
Ç÷§Æû | 95ÀÌ»ó |
ÂüÁ¶ |
|
written by http://www.winapi.co.kr
|