Àμö |
wParam : Å°º¸µå¿Í ´Ù¸¥ ¸¶¿ì½º ¹öÆ°ÀÇ ÇöÀç »óŸ¦ ³ªÅ¸³»´Â °ªÀÌ¸ç ´ÙÀ½ Ç÷¹±×µéÀÇ Á¶ÇÕ°ªÀÌ´Ù.
LOWORD(lParam), HIWORD(lParam) : ¸¶¿ì½ºÀÇ ÇöÀç X, YÁÂÇ¥ÀÌ´Ù. ÀÌ ÁÂÇ¥´Â ÀÛ¾÷ ¿µ¿ªÀÇ ¿øÁ¡À» ±âÁØÀ¸·Î ÇÑ ÁÂÇ¥ÀÌ´Ù. |
||||||||||||
¼³¸í |
ÀÛ¾÷ ¿µ¿ª ³»ºÎ¿¡¼ ¸¶¿ì½º ¿ÞÂÊ ¹öÆ°À» ´õºíŬ¸¯ÇÒ ¶§ ÀÌ ¸Þ½ÃÁö°¡ ¸Þ½ÃÁö Å¥¿¡ ºÙ¿©Áø´Ù. ¸¶¿ì½º°¡ ĸóµÇ¾î ÀÖÀ¸¸é ĸóÇÑ À©µµ¿ì·Î ¸Þ½ÃÁö°¡ Àü´ÞµÇ¸ç ±×·¸Áö ¾ÊÀ¸¸é ¸¶¿ì½º Ä¿¼ ¾Æ·¡ÀÇ À©µµ¿ì·Î Àü´ÞµÈ´Ù. ÀÌ ¸Þ½ÃÁö¸¦ ¹Þ±â À§Çؼ´Â À©µµ¿ì Ŭ·¡½º°¡ ¹Ýµå½Ã CS_DBLCLKS ½ºÅ¸ÀÏÀ» °¡Á®¾ß ÇÑ´Ù. ±×·¸Áö ¾ÊÀ¸¸é ´Ü¼øÈ÷ ¸¶¿ì½º ´©¸§ ¸Þ½ÃÁö¸¸ µÎ¹ø ¹ß»ýÇÑ´Ù. ¶ÇÇÑ µÎ ¸¶¿ì½º Ŭ¸¯ÀÇ ½Ã°£ °£°ÝÀº ½Ã½ºÅÛ¿¡ Á¤ÀǵǾî ÀÖ´Â ´õºíŬ¸¯ ½Ã°£ °£°Ý³»¿¡ ¹ß»ýÇؾ߸¸ ´õºíŬ¸¯À¸·Î ÀÎÁ¤µÈ´Ù. ¸¶¿ì½º ´õºíŬ¸¯½Ã WM_LBUTTONDOWN, WM_LBUTTONUP, WM_LBUTTONDBLCLK, WM_LBUTTONUP ³×°³ÀÇ ¸Þ½ÃÁö°¡ ÀÏ·ÃÀ¸·Î ¹ß»ýÇÑ´Ù. µÎ¹ø° WM_LBUTTONDOWN ¸Þ½ÃÁö°¡ ´õºíŬ¸¯À¸·Î º¯°æµÈ´Ù. |
||||||||||||
¸®ÅÏ |
¸Þ½ÃÁö¸¦ ó¸®ÇßÀ¸¸é 0À» ¸®ÅÏÇÑ´Ù. |
||||||||||||
¿¹Á¦ |
´ÙÀ½ ¿¹Á¦´Â ´õºíŬ¸¯ÇÑ À§Ä¡¿¡ ^DblClk^¹®ÀÚ¿À» º¸¿©ÁØ´Ù. WndClass.style=CS_HREDRAW | CS_VREDRAW | CS_DBLCLKS; ..................... LRESULT CALLBACK WndProc(HWND hWnd,UINT iMessage,WPARAM wParam,LPARAM lParam) { HDC hdc; PAINTSTRUCT ps; static int x,y; switch(iMessage) { case WM_LBUTTONDBLCLK: x=LOWORD(lParam); y=HIWORD(lParam); InvalidateRect(hWnd,NULL,TRUE); case WM_PAINT: hdc=BeginPaint(hWnd, &ps); if (x) { SetTextAlign(hdc,TA_CENTER); TextOut(hdc,x,y,"^DblClk^",8); } EndPaint(hWnd, &ps); return 0; case WM_DESTROY: PostQuitMessage(0); return 0; } return(DefWindowProc(hWnd,iMessage,wParam,lParam)); } ÀÌ À©µµ¿ì°¡ ¸¶¿ì½º ´õºíŬ¸¯ ¸Þ½ÃÁö¸¦ ¹Þ±â À§Çؼ´Â ¹Ýµå½Ã À©µµ¿ì Ŭ·¡½º¿¡ CS_DBLCLKS ½ºÅ¸ÀÏÀ» °¡Á®¾ß ÇÑ´Ù. ¸¸¾à ÀÌ ½ºÅ¸ÀÏÀ» °¡ÁöÁö ¾ÊÀ» °æ¿ì WM_LBUTTONDOWN ¸Þ½ÃÁö¸¦ µÎ¹ø ¹Þ¾ÒÀ» ¶§ ¸Þ½ÃÁöÀÇ ½Ã°£°ú ÁÂÇ¥¸¦ Á÷Á¢ ºñ±³ÇÏ¿© Ä¿½ºÅÒ Á¶°ÇÀ¸·Î ´õºíŬ¸¯À» °ËÃâÇÒ ¼ö ÀÖ´Ù. |
||||||||||||
Ç÷§Æû |
95ÀÌ»ó |
||||||||||||
ÂüÁ¶ |
|
written by http://www.winapi.co.kr
|