CallWindowProc

CallWindowProc ÇÔ¼ö ¸Þ½ÃÁö Á¤º¸ ÁöÁ¤µÈ â ÇÁ·Î½ÃÀú¿¡ Àü´Þ.

LRESULT CallWindowProc ( WNDPROC  lpPrevWndFunc, / / ÀÌÀü ÀýÂ÷¿¡ ´ë ÇÑ Æ÷ÀÎÅÍHWNDhWnd, / / â ÇÚµéUINTMsg, // messageWPARAMwParam, / / óÀ½ ¸Þ½ÃÁö ¸Å°³ º¯¼öLPARAMlParam / ÃÊ´ç ¸Þ½ÃÁö ¸Å°³ º¯¼ö);
 

¸Å°³ º¯¼ö

lpPrevWndFunc
ÀÌÀü â ÇÁ·Î½ÃÀú¿¡ ´ë ÇÑ Æ÷ÀÎÅÍ.

½ÇÁ¦·Î µç ÁÖ¼Ò Ã¢ ¶Ç´Â ´ëÈ­ »óÀÚ ÇÁ·Î½ÃÀú ÀÎÁö ÇÚµéÀ» ÁÖ¼Ò¸¦ ³ªÅ¸³»´ÂÀÌ °ª nIndex ¸Å°³ º¯¼ö¸¦ GWL_WNDPROC ¶Ç´Â DWL_DLGPROC·Î ¼³Á¤ GetWindowLong ÇÔ¼ö¸¦ È£Ãâ ÇÏ ¿© °¡Á®¿Â °æ¿ì.

hWnd
¸Þ½ÃÁö¸¦ ¹Þ´Â â ÇÁ·Î½ÃÀú¿¡ ´ë ÇÑ ÇÚµé.
Msg
¸Þ½ÃÁö¸¦ ÁöÁ¤ÇÕ´Ï´Ù.
wParam
Ãß°¡ ¸Þ½ÃÁö °ü·Ã Á¤º¸¸¦ ÁöÁ¤ÇÕ´Ï´Ù. ÀÌ ¸Å°³ º¯¼öÀÇ ³»¿ëÀ» Msg ¸Å°³ º¯¼öÀÇ °ª¿¡ µû¶ó ´Þ¶ó Áý´Ï´Ù.
lParam
Ãß°¡ ¸Þ½ÃÁö °ü·Ã Á¤º¸¸¦ ÁöÁ¤ÇÕ´Ï´Ù. ÀÌ ¸Å°³ º¯¼öÀÇ ³»¿ëÀ» Msg ¸Å°³ º¯¼öÀÇ °ª¿¡ µû¶ó ´Þ¶ó Áý´Ï´Ù.

¹Ýȯ °ª

¹Ýȯ °ª ¸Þ½ÃÁö ó¸®ÀÇ °á°ú ÁöÁ¤ ÇÏ °í Àü¼Û ÇÏ´Â ¸Þ½ÃÁö¿¡ µû¶ó ´Ù¸¨´Ï´Ù.

ÁÖÀÇ

CallWindowProc ÇÔ¼ö¸¦ »ç¿ë ÇÏ ¿© â ¼­ºêŬ·¡½Ì¿¡ ´ë ÇÑ. ÀϹÝÀûÀ¸·Î µ¿ÀÏÇÑ Å¬·¡½º¿Í ¸ðµç âÀ» ÇÑ Ã¢ ÇÁ·Î½ÃÀú¸¦ °øÀ¯ÇÕ´Ï´Ù. ÇÏÀ§ Ŭ·¡½º´Â â ¶Ç´Â ´©±¸ÀÇ ¸Þ½ÃÁö¸¦ °¡·Îä °í Ŭ·¡½ºÀÇ Ã¢ ÇÁ·Î½ÃÀú¿¡ Àü´Þ Çϱâ Àü¿¡ ´Ù¸¥ â ÇÁ·Î½ÃÀú (¶Ç´Â ÀýÂ÷)¿¡ ÀÇÇØ ó¸® ÇÏ´Â µ¿ÀÏÇÑ Å¬·¡½º¿Í âÀÇ ÁýÇÕ.

SetWindowLong ÇÔ¼ö´Â ÀÌÀü ÇÏ´Â ´ë½Å »õ â ÇÁ·Î½ÃÀú¸¦ È£Ãâ ÇÏ ¿© ½Ã½ºÅÛÀÌ Æ¯Á¤ À©µµ¿ì¿Í °ü·Ã µÈ â ÇÁ·Î½ÃÀú¸¦ º¯°æ ÇÏ ¿© ÇÏÀ§ Ŭ·¡½º¸¦ ¸¸µì´Ï´Ù. ÀÀ¿ë ÇÁ·Î±×·¥ CallWindowProc¸¦ È£Ãâ ÇÏ ¿© ÀÌÀü â ÇÁ·Î½ÃÀú¿¡ »õ â ÇÁ·Î½ÃÀú¿¡ ÀÇÇØ ó¸® µÇÁö ¸Þ½ÃÁö¸¦ Àü´Þ ÇØ¾ß ÇÕ´Ï´Ù. ÀÌ ÀÀ¿ë ÇÁ·Î±×·¥À» â ÇÁ·Î½ÃÀúÀÇ Ã¼ÀÎÀ» ¸¸µé ¼ö ÀÖ½À´Ï´Ù.

STRICT Á¤ÀÇ ÇÏ´Â °æ¿ì lpPrevWndFunc ¸Å°³ º¯¼ö´Â µ¥ÀÌÅÍ Çü½ÄÀÌ WNDPROC. WNDPROC Çü½ÄÀÌ ´ÙÀ½°ú °°Àº ¼±¾ð

LRESULT (Äݹé * WNDPROC) (HWND, UINT, WPARAM, LPARAM) 
 

STRICT Á¤ÀÇ µÇÁö ¾ÊÀº °æ¿ì lpPrevWndFunc ¸Å°³ º¯¼ö´Â µ¥ÀÌÅÍ Çü½ÄÀÌ FARPROC. FARPROC Çü½ÄÀÇ °°ÀÌ ¼±¾ð

int (¸Ö¸® WINAPI * FARPROC)) 
 

C, FARPROC ¼±¾ðÀÌ ÁöÁ¤ µÇÁö ¾ÊÀº ¸Å°³ º¯¼ö ¸ñ·ÏÀÌ ÀÖ´Â Äݹé ÇÔ¼ö¸¦ ³ªÅ¸³À´Ï´Ù. ±×·¯³ª c + +,, ºó ¸Å°³ º¯¼ö ¸ñ·Ï ¼±¾ð¿¡¼­ ³ªÅ¸³À´Ï´Ù ÇÔ¼ö´Â ¸Å°³ º¯¼ö°¡ ¾ø½À´Ï´Ù. ÀÌ ¹Ì¹¦ÇÑ Â÷ÀÌ ºÎÁÖÀÇ Äڵ带 Áß´ÜÇÒ ¼ö ÀÖ½À´Ï´Ù. ´ÙÀ½ÀºÀÌ »óȲÀ» ó¸® ÇÏ´Â ÇÑ °¡Áö ¹æ¹ýÀº:

# ifdef ¾ö°ÝÇÑ WNDPROC MyWindowProcedure # ´Ù¸¥ FARPROC MyWindowProcedure... # endif lResult CallWindowProc (MyWindowProcedure,...) = 
 

ºó Àμö ¸ñ·ÏÀ» »ç¿ë ÇÏ ¿© ¼±¾ð µÈ ÇÔ¼ö¿¡ ´ë ÇÑ ÀÚ¼¼ÇÑ ³»¿ëÀº c + + ÇÁ·Î±×·¡¹Ö ¾ð¾î, Second Edition Bjarne Stroustrup¸¦ ÂüÁ¶ ÇϽʽÿÀ.

Windows NT: CallWindowProc ÇÔ¼ö À¯´ÏÄÚµå ANSI º¯È¯À» ó¸®ÇÕ´Ï´Ù. ´ç½ÅÀº ÀÌ¿ëÇÒ ¼ö ¾ø½À´Ï´ÙÀÌ º¯È¯ÀÇ Ã¢ ÇÁ·Î½ÃÀú¸¦ Á÷Á¢ È£Ãâ ÇÏ´Â °æ¿ì.

QuickInfo

nbsp;?Windows &NT: ¹öÀü 3.1 ÀÌ»óÀÌ ÇÊ¿ä ÇÕ´Ï´Ù.
Windows:Windows 95 ÀÌ»óÀÌ ÇÊ¿äÇÕ´Ï´Ù.
Windows CE:¹öÀü 1.0 ÀÌ»óÀÌ ÇÊ¿äÇÕ´Ï´Ù.
Çì´õ:Winuser.h¿¡¼­ ¼±¾ðÇÕ´Ï´Ù.
°¡Á®¿À±â ¶óÀ̺귯¸®:User32.lib¸¦ »ç¿ë ÇÕ´Ï´Ù.
À¯´ÏÄÚµå:Windows NT¿¡¼­ À¯´ÏÄÚµå¿Í ANSI ¹öÀüÀ¸·Î ±¸Çö.

Âü°í Ç׸ñ

â ÇÁ·Î½ÃÀú °³¿ä â ÇÁ·Î½ÃÀú ÇÔ¼ö, GetWindowLong, SetClassLong, SetWindowLong

 

Index