CFHookProc

CFHookProc ÈÄÅ© ÇÁ·Î½ÃÀú ChooseFont ÇÔ¼ö¸¦ ÇÔ²² »ç¿ë ÇÏ´Â ÀÀ¿ë ÇÁ·Î±×·¥ Á¤ÀÇ ¶Ç´Â ¶óÀ̺귯¸® Á¤ÀÇ Äݹé ÇÁ·Î½ÃÀú°¡ÀÔ´Ï´Ù. ÈÄÅ© ÇÁ·Î½ÃÀú ¸Þ½ÃÁö ¶Ç´Â ±Û²Ã °ø¿ë ´ëÈ­ »óÀÚÀÇ ±âº» ´ëÈ­ »óÀÚ ÇÁ·Î½ÃÀú¸¦ À§ÇÑ ¾Ë¸² ¼ö½Å.

LPCFHOOKPROC Çü½ÄÀºÀÌ Äݹé ÇÔ¼ö¿¡ ´ë ÇÑ Æ÷ÀÎÅ͸¦ Á¤ÀÇÇÕ´Ï´Ù. CFHookProc Àº ÀÀ¿ë ÇÁ·Î±×·¥ Á¤ÀÇ ÇÔ¼ö À̸§¿¡ ´ë ÇÑ ÀÚ¸® Ç¥½ÃÀÚ.

UINT Äݹé CFHookProc (  HWND  hdlg, / / ´ëÈ­ »óÀÚ Ã¢¿¡ ´ë ÇÑ ÇÚµéUINTuiMsg, / / ¸Þ½ÃÁö ½Äº°ÀÚWPARAMwParam, / / ¸Þ½ÃÁö ¸Å°³ º¯¼öLPARAMlParam / / ¸Þ½ÃÁö ¸Å°³ º¯¼ö);
 

¸Å°³ º¯¼ö

hdlg
¸Þ½ÃÁö´Â ±Û²Ã ´ëÈ­ »óÀÚ Ã¢¿¡ ´ë ÇÑ ÇÚµé.
uiMsg
¼ö½Å µÇ´Â ¸Þ½ÃÁö¸¦ ½Äº°.
wParam
¸Þ½ÃÁö¿¡ ´ë ÇÑ Ãß°¡ Á¤º¸¸¦ ÁöÁ¤ÇÕ´Ï´Ù. Á¤È®ÇÑ Àǹ̴ uiMsg ¸Å°³ º¯¼öÀÇ °ª¿¡ µû¶ó ´Þ¶ó Áý´Ï´Ù.
lParam
¸Þ½ÃÁö¿¡ ´ë ÇÑ Ãß°¡ Á¤º¸¸¦ ÁöÁ¤ÇÕ´Ï´Ù. Á¤È®ÇÑ Àǹ̴ uiMsg ¸Å°³ º¯¼öÀÇ °ª¿¡ µû¶ó ´Þ¶ó Áý´Ï´Ù.

LParam °ª ÁöÁ¤ ÀÏ¹Ý ´ëÈ­ »óÀÚ¸¦ ¸¸µé ¶§ Æ÷ÇÔ µÈ CHOOSEFONT ±¸Á¶¿¡ ´ë ÇÑ Æ÷ÀÎÅÍ´Â uiMsg ¸Å°³ º¯¼ö WM_INITDIALOG ¸Þ½ÃÁö¸¦ ³ªÅ¸³»´Â °æ¿ì.

¹Ýȯ °ª

ÈÄÅ© ÇÁ·Î½ÃÀú 0À» ¹Ýȯ ÇÏ´Â °æ¿ì ±âº» ´ëÈ­ »óÀÚ ÇÁ·Î½ÃÀú°¡ ¸Þ½ÃÁö¸¦ ó¸® ÇÏ´Â.

ÈÄÅ© ÇÁ·Î½ÃÀú´Â 0ÀÌ ¾Æ´Ñ °ªÀ» ¹Ýȯ ÇÏ´Â °æ¿ì ±âº» ´ëÈ­ »óÀÚ ÇÁ·Î½ÃÀú¿¡¼­ ¸Þ½ÃÁö¸¦ ¹«½Ã ÇÏ´Â.

ÁÖÀÇ

ChooseFont ÇÔ¼ö¸¦ »ç¿ë ÇÏ ¿© ±Û²Ã ´ëÈ­ »óÀÚ¸¦ ¸¸µé ¶§ CFHookProc ÈÄÅ© ÇÁ·Î½ÃÀú ¸Þ½ÃÁö ¶Ç´Â ¾Ë¸² ´ëÈ­ »óÀÚ ÇÁ·Î½ÃÀú¸¦ À§ÇÑ Ã³¸®¸¦ Á¦°øÇÒ ¼ö ÀÖ½À´Ï´Ù. ´ëÈ­ »óÀÚ »ý¼º ÇÔ¼ö¿¡ Àü´Þ ÇÏ´Â CHOOSEFONT ±¸Á¶¸¦ »ç¿ë ÇÏ ¿© ÈÄÅ© ÇÁ·Î½ÃÀú¸¦ »ç¿ë ÇÕ´Ï´Ù. LpfnHook ¸â¹ö¿¡¼­ ÈÄÅ© ÇÁ·Î½ÃÀúÀÇ ÁÖ¼Ò¸¦ ÁöÁ¤ ÇÏ °í Ç÷¡±× ±¸¼º¿ø¿¡¼­ CF_ENABLEHOOK Ç÷¡±×¸¦ ÁöÁ¤.

±âº» ´ëÈ­ »óÀÚ ÇÁ·Î½ÃÀú ÈÄÅ© ÇÁ·Î½ÃÀú¿¡ Àü´Þ Çϱâ Àü¿¡ WM_INITDIALOG ¸Þ½ÃÁö¸¦ ó¸® ÇÕ´Ï´Ù. ´Ù¸¥ ¸ðµç ¸Þ½ÃÁö¿¡ ´ë ÇÑ ÈÄÅ© ÇÁ·Î½ÃÀú ¸Þ½ÃÁö¸¦ ¸ÕÀú ¹Þ½À´Ï´Ù. ±×·± ´ÙÀ½, ÈÄÅ© ÇÁ·Î½ÃÀúÀÇ ¹Ýȯ °ª ±âº» ´ëÈ­ »óÀÚ ÇÁ·Î½ÃÀú°¡ ¸Þ½ÃÁö¸¦ ó¸® ¶Ç´Â ¹«½Ã ¿©ºÎ °áÁ¤.

ÈÄÅ© ÇÁ·Î½ÃÀú´Â WM_CTLCOLORDLG ¸Þ½ÃÁö¸¦ ó¸® ÇÏ´Â °æ¿ì ´ëÈ­ »óÀÚÀÇ ¹è°æ ±×¸²¿¡ ´ë ÇÑ À¯È¿ÇÑ ºê·¯½Ã ÇÚµéÀ» ¹Ýȯ ÇØ¾ß ÇÕ´Ï´Ù. ÀϹÝÀûÀ¸·Î, ÈÄÅ© ÇÁ·Î½ÃÀú WM_CTLCOLOR * ¸Þ½ÃÁö¸¦ ó¸® ÇÏ´Â °æ¿ì ±×°ÍÀº ÁöÁ¤µÈ µÈ ÄÁÆ®·ÑÀÇ ¹è°æ ±×¸²¿¡ ´ë ÇÑ À¯È¿ÇÑ ºê·¯½Ã ÇÚµéÀ» ¹Ýȯ ÇØ¾ß ÇÕ´Ï´Ù.

ÈÄÅ© ÇÁ·Î½ÃÀú¿¡¼­ EndDialog ÇÔ¼ö¸¦ È£Ãâ ÇÏÁö ¸¶½Ê½Ã¿À. ´ë½Å, ÈÄÅ© ÇÁ·Î½ÃÀú ´ëÈ­ »óÀÚ ÇÁ·Î½ÃÀú¸¦ IDABORT °ª°ú ÇÔ²² WM_COMMAND ¸Þ½ÃÁö¸¦ °Ô½Ã ÇÏ·Á¸é postmessage ¸¦ ÇÔ¼ö¸¦ È£ÃâÇÒ ¼ö ÀÖ½À´Ï´Ù. IDABORT °Ô½Ã ´ëÈ­ »óÀÚ°¡ ´ÝÈ÷°í ´ëÈ­ »óÀÚ ÇÔ¼ö´Â FALSE¸¦ ¹Ýȯ Çϸé. ÈÄÅ© ÇÁ·Î½ÃÀú ¹× ÀÀ¿ë ÇÁ·Î±×·¥ °£ÀÇ Åë½Å ¸ÞÄ¿´ÏÁòÀ» Á¦°ø ÇØ¾ß ÇÕ´Ï´Ù ÈÄÅ© ÇÁ·Î½ÃÀú ´ëÈ­ »óÀÚ¸¦ Á¾·á ÇÏ´Â ÀÌÀ¯¸¦ ¾Ë°í ÇØ¾ß ÇÏ´Â °æ¿ì.

ÀÏ¹Ý ´ëÈ­ »óÀÚÀÇ Ç¥ÁØ ÄÁÆ®·ÑÀ» ¼­ºê Ŭ·¡½º ¼ö ÀÖ½À´Ï´Ù. ±×·¯³ª, ÀϹÝÀûÀÎ ´ëÈ­ »óÀÚ ÇÁ·Î½ÃÀú°¡ ÀÖ½À´Ï´Ù ¶ÇÇÑ ÇÏÀ§ ÄÁÆ®·ÑÀ». ¶§¹®¿¡ ÈÄÅ© ÇÁ·Î½ÃÀú´Â WM_INITDIALOG ¸Þ½ÃÁö¸¦ ó¸® ÇÏ´Â °æ¿ì ÇÏÀ§ ÄÁÆ®·ÑÀ» ÇÑ´Ù. ÀÌ·¸°Ô Çϸé ÇÏÀ§ ÇÁ·Î½ÃÀú ÇÏÀ§ ÇÁ·Î½ÃÀú ´ëÈ­ »óÀÚ ÇÁ·Î½ÃÀú¿¡¼­ ¼³Á¤ Çϱâ Àü¿¡ ÄÁÆ®·ÑÀÌ Æ¯Á¤ ¸Þ½ÃÁö¸¦ ¼ö½Å.

QuickInfo

nbsp;?Windows &NT: ¹öÀü 3.1 ÀÌ»óÀÌ ÇÊ¿ä ÇÕ´Ï´Ù.
Windows:Windows 95 ÀÌ»óÀÌ ÇÊ¿äÇÕ´Ï´Ù.
Windows CE:Áö¿ø µÇÁö ¾Ê½À´Ï´Ù.
Çì´õ:Commdlg.h¿¡ ¼±¾ð ÇÕ´Ï´Ù.
°¡Á®¿À±â ¶óÀ̺귯¸®:»ç¿ëÀÚ Á¤ÀÇ.

Âü°í Ç׸ñ

°ø¿ë ´ëÈ­ »óÀÚ ¶óÀ̺귯¸® °³¿ä, °øÅë ´ëÈ­ »óÀÚ ÇÔ¼ö ChooseFont, CHOOSEFONT, EndDialog, postmessage¸¦, WM_INITDIALOG, WM_CTLCOLORDLG

 

Index