TN028: »óȲ¿¡ ¸Â´Â µµ¿ò¸» Áö¿ø

ÀÌ ³ëÆ®¿¡¼­´Â µµ¿ò¸» ÄÁÅØ½ºÆ® Id (Áï, Ç׸ñ ¹øÈ£) ¹× MFC 2.0¿¡¼­´Â ±âŸ µµ¿ò¸» ¹®Á¦¸¦ ÇÒ´ç ÇÏ´Â ±ÔÄ¢À» ¼³¸í ÇÕ´Ï´Ù. ¹®¸Æ ÀÎ½Ä µµ¿ò¸» Áö¿ø ÇÊ¿ä Visual c + + Professional¿¡¼­ »ç¿ëÇÒ ¼ö ÀÖ´Â µµ¿ò¸» ÄÄÆÄÀÏ·¯¡£

µµ¿ò¸» Áö¿ø À¯Çü

Windows ÀÀ¿ë ÇÁ·Î±×·¥¿¡¼­ ±¸Çö ÇÏ´Â »óȲ¿¡ ¸Â´Â µµ¿ò¸»ÀÇ µÎ Á¾·ù°¡ ÀÖ½À´Ï´Ù. ù ¹øÂ°, À̶ó°í Winhelp¸¦ ÀûÀý ÇÑ ÄÁÅØ½ºÆ®¿¡ ÇöÀç Ȱ¼º °³Ã¼¸¦ ±â¹ÝÀ¸·Î ½ÃÀÛ ÇÏ´Â °ÍÀ» Æ÷ÇÔ "F1 µµ¿ò¸»" ÇÕ´Ï´Ù. µÎ ¹øÂ° SHIFT + F1 ¸ðµåÀÔ´Ï´Ù. ÀÌ ¸ðµå¿¡¼­ ¸¶¿ì½º Ä¿¼­ º¯°æ (ÇÑ Á¶ÇÕ È­»ìÇ¥ + ¹°À½Ç¥) µµ¿ò¸» Ä¿¼­ ¹× »ç¿ëÀÚ °³Ã¼¿¡ µµ¿ò°ú °°Àº °Í À̶ó°í ±×µéÀº Ŭ¸¯. ±× ½ÃÁ¡¿¡¼­ WinHelp »ç¿ëÀÚ Å¬¸¯ ÇÑ °³Ã¼¿¡ ´ë ÇÑ µµ¿ò¸»À» ÁÖ°í ½ÃÀÛ µË´Ï´Ù.

Microsoft Foundation classes ¸ðµÎ ÀÌ·¯ÇÑ ÇüÅÂÀÇ µµ¿ò¸»À» ±¸ÇöÇÕ´Ï´Ù. ¶ÇÇÑ, ÇÁ·¹ÀÓ ¿öÅ© Áö¿ø µµ¿ò¸» »öÀÎÀ» »ç¿ë ÇÏ´Â µ¥ µµ¿òÀÌ µÎ °³ÀÇ °£´ÜÇÑ µµ¿ò¸» ¸í·É¡£

µµ¿ò¸» ÆÄÀÏ

Microsoft Foundation classes ´ÜÀÏ µµ¿ò¸» ÆÄÀÏ·Î °¡Á¤ÇÕ´Ï´Ù. µµ¿ò¸» ÆÄÀÏ À̸§°ú °æ·Î ÀÀ¿ë ÇÁ·Î±×·¥À¸·Î °°Àº ÀÖ¾î¾ß (.EXE-gt;ÀÔ´Ï´Ù.HLP)(&G)¡£

À̰ÍÀº »ç¿ëÀÚ°¡ ¿øÇÏ´Â °æ¿ì º¯°æÇÒ ¼ö ÀÖ´Â m_pszHelpFilePath ¶ó´Â °ø¿ë CWinApp ¸â¹ö º¯¼ö¡£

µµ¿ò¸» ÄÁÅØ½ºÆ® ¹üÀ§

0x00000000-0x0000FFFF: »ç¿ëÀÚ Á¤ÀÇ

0x00010000-0x0001FFFF: ¸í·É (¸Þ´º/¸í·É ´ÜÃß)

nbsp;??0X00010000 + ID_(&N)

nbsp;??(Âü°í: 0x18000-> 0x1FFFF ÀÌÈÄ ¸í·É Id´Â ½ÇÁ¦ ¹üÀ§´Â > 0x8000 =)

0x00020000-0x0002FFFF: â ¹× ´ëÈ­ »óÀÚ

nbsp;??0X00020000 + IDR_(&N)

nbsp;??(Âü°í: ¿©±â¼­-> 0x27FFF ¶§¹®¿¡ IDRs ½Ç¿ëÀûÀÎ ¹üÀ§´Â < = 0x7FFF)

0x00030000-0x0003FFFF: ¿À·ù ¸Þ½ÃÁö (¿À·ù ¹®ÀÚ¿­ ID ±âÁØ)

nbsp;??0X00030000 + IDP_(&N)

0x00040000-0x0004FFFF: Ư¼ö ¸ñÀû (ºñŬ¶óÀÌ¾ðÆ® ¿µ¿ª)

nbsp;??0x00040000 + HitTest ¿µ¿ª(&N)

0x00050000-0x0005FFFF: ÄÁÆ®·Ñ (µÇÁö ¾Ê´Â ¸í·É)

nbsp;??0X00040000 + IDW_(&N)

ÀÌ·¯ÇÑ ±ÔÄ¢Àº Microsoft Foundation Ŭ·¡½ºÀÇ ±âº» ±¸Çö¿¡ Çϵå ÄÚµù ÇÕ´Ï´Ù. ´Ù¾ç ÇÑ µµ¿ò¸» °ü·Ã ¸â¹ö ÇÔ¼öÀÇ ´Ù¸¥ ±¸ÇöÀ» Á¦°ø ÇÏ ¿© ¹«½ÃÇÒ ¼ö ÀÖ½À´Ï´Ù.

°£´ÜÇÑ "µµ¿ò¸»" ¸í·É

°Å±â¿¡ µÎ °³ÀÇ °£´ÜÇÑ µµ¿ò¸» ¸í·ÉÀ» Microsoft Foundation Ŭ·¡½º¿¡ ÀÇÇØ ±¸Çö µÇ´Â:

ÀÌ µÎ ¸í·ÉÀº ´Ü¼øÈ÷ ÀÀ¿ë ÇÁ·Î±×·¥¿¡ ´ë ÇÑ µµ¿ò¸» »öÀÎÀ» Ç¥½Ã ÇÏ °í °¢°¢ WinHelp ÇÁ·Î±×·¥À» »ç¿ë ÇÏ ¿© »ç¿ëÀÚ µµ¿ò¸» Ç¥½Ã¡£

»óȲ¿¡ ¸Â´Â µµ¿ò¸» (F1 µµ¿ò¸»)

ÀÌ »óȲ¿¡ ¸Â´Â µµ¿ò¸» (F1 µµ¿ò¸»·Î º¸Åë À̶ó°í ÇÔ)ÀÇ Ã¹ ÇüÅÂÀÔ´Ï´Ù. ¼ÕÀ» ÀÛ¾÷ (Ȱ¼º â ¶Ç´Â ¸Þ´º Ç׸ñ)¿¡ ´ë ÇÑ µµ¿ò¸»À» º¸·Á¸é f1 ۸¦ ´©¸¦. Ưº° ÇÑ "µµ¿ò¸» ¸ðµå" Âü¿©¡£

ÀϹÝÀûÀ¸·Î F1 Ű ÁÖ Ã¢ ¾×¼¿·¯·¹ÀÌÅÍ Å° Å×ÀÌºí¿¡ »ðÀÔ µÈ °¡¼Ó±â¿¡ ÀÇÇØ ID_HELP ÀÇ ID¿Í ¸í·É º¯È¯ µË´Ï´Ù. ID_HELP ¸í·É ¶ÇÇÑ ÁÖ Ã¢ ¶Ç´Â ´ëÈ­ »óÀÚ¿¡¼­ ID_HELP ÀÇ ID¿Í ¹öư¿¡ ÀÇÇØ »ý¼º µÉ ¼ö ÀÖ½À´Ï´Ù. ¶ÇÇÑ ¸Þ´º³ª ´ëÈ­ »óÀÚ°¡ Ȱ¼ºÈ­ µÇ¾î f1 ۸¦ ´©¸¦ ¶§ ۰¡ ID_HELP ¸í·ÉÀ¸·Î º¯È¯ÇÒ Çϵå ÄÚµù¡£

±×·¯³ª ID_HELP ¸í·ÉÀ» »ý¼º ÇÏ´Â ±×°Í ¶ó¿ìÆÃµÇ´Â ÀÏ¹Ý ¸í·ÉÀ¸·Î ¸í·É 󸮱â (¿¡ ´ë ÇÑ ÀÚ¼¼ÇÑ ³»¿ëÀº Microsoft Foundation Ŭ·¡½º ¸í·É ¶ó¿ìÆÃ ¾ÆÅ°ÅØÃ³¿¡ ÂüÁ¶ ±â¼ú ³ëÆ® 21.)¿¡ µµ´ÞÇÒ ¶§±îÁö ÀÀ¿ë ÇÁ·Î±×·¥ µµ¿ò¸» Ȱ¼ºÈ­ µÈ °æ¿ì¿¡ ID_HELP ¸í·ÉÀº CWinApp::OnHelp ÇÔ¼ö¿¡ ÀÇÇØ ó¸® µË´Ï´Ù. ¶§¹®¿¡ °¡Àå ±¸Ã¼ÀûÀÎ ÄÁÅØ½ºÆ®¸¦ °áÁ¤ ÇÏ´Â µ¥ ÀûÇÕ ÇÏÁö ¾Ê½À´Ï´Ù ±âº» ¸í·É ¶ó¿ìÆÃÀ» ¸í·ÉÀº Ç×»ó application °³Ã¼¿¡ ¶ó¿ìÆÃµË´Ï´Ù ´ë½Å ÇÏ °í µµ¿ò¿¡ ´ë ÇÑ »ç¿ëÀÚ ÁöÁ¤ °æ·Î °ÅÃÄ¡£

CWinApp::OnHelp ´ÙÀ½ ¼ø¼­·Î WinHelp ½ÃÀÛ ÇÏ·Á°í

  1. µµ¿ò¸» id Ȱ¼º AfxMessageBox È£Ãâ¿¡ ´ë ÇÑ °Ë»ç WinHelp ÄÁÅØ½ºÆ®´Â ¸Þ½ÃÁö »óÀÚ¿¡ ÀûÀý ÇÑ¿Í ÇÔ²² ½ÃÀÛ ¸Þ½ÃÁö »óÀÚ°¡ ÇöÀç Ȱ¼ºÈ­ µÈ °æ¿ì¡£

  2. ¸Þ½ÃÁö »óÀÚ°¡ Ȱ¼ºÈ­ µÈ °æ¿ì CWinApp::OnHelp WM_COMMANDHELP (Microsoft Foundation classes¿¡ °³ÀÎ ¸Þ½ÃÁö) Ȱ¼º â¿¡ º¸³À´Ï´Ù. ¶§±îÁö ¸Þ½ÃÁö¸¦ ó¸® ÇÏ´Â ¶Ç´Â ÇöÀç âÀÇ ÃÖ»óÀ§ â¿¡´Â â Winhelp¸¦ ½ÇÇà ÇÏ ¿© ÀÀ´ä ÇÏÁö ¾ÊÀ¸¸é, ÇØ´ç âÀÇ ºÎ¸ð¿¡ µ¿ÀÏÇÑ ¸Þ½ÃÁö°¡ º¸³»Áý´Ï´Ù ´ÙÀ½ (±×¸®°í µû¶ó¼­ ºÎ¸ð â ¾ø´Â)¡£

  3. ¸Þ½ÃÁö°¡ ó¸® µÇÁö ¾ÊÀº ³²¾Æ, ±âº» µµ¿ò¸» È£Ã⠵˴ϴÙ. À̰ÍÀº ¸ÞÀÎ À©µµ¿ì¿¡ ID_DEFAULT_HELP ¸í·ÉÀ» Àü¼Û ÇÏ ¿© ÀÌ·ç¾îÁý´Ï´Ù. ÀÌ ¸í·ÉÀº ÀϹÝÀûÀ¸·Î ¸ÅÇεǾî CWinApp::OnHelpIndex¡£

ID ±âÁØ °ª (0x10000 ¸í·É, ´ëÈ­ »óÀÚ¿Í °°Àº ¸®¼Ò½º¿¡ ´ë ÇÑ ¿©±â¼­)À» ÀüüÀûÀ¸·Î ÀçÁ¤ÀÇ ÇÏ·Á¸é ÀÀ¿ë ÇÁ·Î±×·¥ CWinApp::WinHelpÀ» ÀçÁ¤ÀÇ ÇØ¾ß ÇÕ´Ï´Ù. »ç½Ç ÀÌ·¸°Ô ½º½º·Î ClassWizard ¹× AppWizard ÀÀ¿ë ÇÁ·Î±×·¥ÀÇ ±¸Çö¿¡¼­ ¿¹¸¦ µé¾î, ¸ðµÎ ´ÜÀÏ µµ¿ò¸» ÆÄÀÏÀ» °øÀ¯ ÇϹǷΡ£

µµ¿ò¸» ÄÁÅØ½ºÆ® °áÁ¤ ¹æ¹ý ¹×ÀÌ ±â´ÉÀ» ¹«½Ã ÇÏ·Á¸é ÀÀ¿ë ÇÁ·Î±×·¥ (¾Æ·¡ ÂüÁ¶) WM_COMMANDHELP ¸Þ½ÃÁö¸¦ ó¸® ÇØ¾ß ÇÕ´Ï´Ù. Á» ´õ ±¸Ã¼ÀûÀÎ µµ¿òÀÌ ¶ó¿ìÆÃ ÇÁ·¹ÀÓ ¿öÅ©¸¦ Á¦°ø, º¸´Ù¸¸ ÇöÀç MDI ÀÚ½Ä Ã¢À¸·Î ±íÀº¸¦ Á¦°ø ÇÏ½Ç ¼ö ÀÖ½À´Ï´Ù. ¶Ç´Â ƯÁ¤ âÀÌ ³ª ´ëÈ­ »óÀÚ-¾Æ¸¶µµ ±× °³Ã¼ ¶Ç´Â ´ëÈ­ »óÀÚ ³»ÀÇ È°¼º ÄÁÆ®·ÑÀÇ ÇöÀç ³»ºÎ »óÅ¿¡ ±â¹Ý¿¡ ´ë ÇÑ Á» ´õ ±¸Ã¼ÀûÀÎ µµ¿òÀ» Á¦°ø ÇϰíÀÚ¡£

WM_COMMANDHELP

afx_msg LRESULT CWnd::OnCommandHelp (WPARAM, LPARAM lParam)

WM_COMMANDHELP MFC °³ÀÎ Windows ¸Þ½ÃÁö µµ¿ò¸»À» ¿äûÇÒ ¶§ Ȱ¼º âÀÇ ¹ÞÀºÀÔ´Ï´Ù. âÀÌÀÌ ¸Þ½ÃÁö¸¦ ¹ÞÀ¸¸é ±×°ÍÀº À©µµ¿ìÀÇ ³»ºÎ »óÅÂ¿Í ÀÏÄ¡ ÇÏ´Â ÄÁÅØ½ºÆ® CWinApp::WinHelp È£Ãâ¡£

lParam

ÇöÀç »ç¿ëÇÒ ¼ö ÀÖ´Â µµ¿ò¸» ÄÁÅØ½ºÆ®¸¦ Æ÷ÇÔÇÕ´Ï´Ù. lParam 0 ÀÌ¸é µµ¿ò¸» ÄÁÅØ½ºÆ®°¡ ¾ø´Â ¾ÆÁ÷ °áÁ¤ µÇ¾ú½À´Ï´Ù. OnCommandHelp ÀÇ ±¸Çö "´õ ³ªÀº" ÄÁÅØ½ºÆ®¸¦ È®ÀÎ ÇÏ·Á¸é Lparam¿¡ ÄÁÅØ½ºÆ® ID¸¦ »ç¿ëÇÒ ¼ö ÀÖ½À´Ï´Ù ¶Ç´Â CWinApp::WinHelp Àü´Þ ±×³É ¼ö ÀÖ½À´Ï´Ù.

wParam

»ç¿ë µÇÁö ¾ÊÀ¸¸ç 0ÀÌ µÉ °ÍÀÔ´Ï´Ù¡£

OnCommandHelp ÇÔ¼ö´Â CWinApp::WinHelp¸¦ È£Ãâ ÇÏ´Â °æ¿ì TRUE¸¦ ¹Ýȯ ÇØ¾ß ÇÕ´Ï´Ù. ÀÌ ¸í·ÉÀº ´Ù¸¥ Ŭ·¡½º (±âº» Ŭ·¡½º)¿Í ´Ù¸¥ â ¶ó¿ìÆÃ ÁøÁ¤ÇÑ ÁßÁö¸¦ ¹Ýȯ¡£

µµ¿ò¸» ¸ðµå (Shift + F1 µµ¿ò¸»)

ÀÌ »óȲ¿¡ ¸Â´Â µµ¿ò¸»ÀÇ µÎ ¹øÂ° ÇüÅÂÀÔ´Ï´Ù. ÀϹÝÀûÀ¸·ÎÀÌ ¸ðµå´Â SHIFT + f 1À» ´­·¯ ¶Ç´Â ¸Þ´º µµ±¸ ¸ðÀ½À» ÅëÇØ ÀÔ·Â µË´Ï´Ù. ¸í·É (ID_CONTEXT_HELP)·Î ±¸Çö µË´Ï´Ù. ÀÌ ¸í·ÉÀº ¸ð´Þ ´ëÈ­ »óÀÚ µ¿¾È ¹ø¿ª ¸Þ½ÃÁö ÇÊÅÍ ÈÄÅ© »ç¿ë µÇÁö ¾Ê½À´Ï´Ù ¶Ç´Â ¸Þ´º°¡ Ȱ¼ºÈ­ µÇ¾î, µû¶ó¼­ÀÌ ¸í·ÉÀº ¶§¸¸ »ç¿ëÀÚ¿¡ °Ô »ç¿ëÇÒ ¼ö ÀÖ´Â ±âº» ¸Þ½ÃÁö ÆßÇÁ (CWinApp::Run)¸¦ ½ÇÇà ÇÏ´Â ÀÀ¿ë ÇÁ·Î±×·¥¡£

ÀÀ¿ë ÇÁ·Î±×·¥ (¿¹: â ÁÖÀ§ÀÇ Å©±â Á¶Á¤ Å׵θ®) ±× Áö¿ª¿¡ ´ë ÇÑ ±×°ÍÀÇ ÀÚ½ÅÀÇ Ä¿¼­°¡ Ç¥½Ã ÀϹÝÀûÀ¸·Î ÇÏ´Â °æ¿ì¿¡ÀÌ ¸ðµå¸¦ ÀÔ·Â ÇÑ ÈÄ µµ¿ò¸» ¸¶¿ì½º Ä¿¼­´Â ÀÀ¿ë ÇÁ·Î±×·¥ÀÇ ¸ðµç ¿µ¿ªÀ» ÅëÇØ Ç¥½Ã µË´Ï´Ù. »ç¿ëÀÚ°¡ ¸¶¿ì½º ¶Ç´Â Űº¸µå¸¦ »ç¿ë ÇÏ ¿© ¸í·ÉÀ» ¼±ÅÃÇÒ ¼ö ÀÖ½À´Ï´Ù. ¸í·ÉÀ» ½ÇÇà ÇÏ´Â ´ë½Å ÇØ´ç ¸í·É¿¡ ´ë ÇÑ µµ¿ò¸» Ç¥½Ã µË´Ï´Ù. ¶ÇÇÑ »ç¿ëÀÚ´Â µµ±¸ ¸ðÀ½¿¡¼­ ´ÜÃß¿Í °°Àº È­¸é¿¡¼­ º¸ÀÌ´Â °³Ã¼ Ŭ¸¯ ÇÏ °í ÇØ´ç °³Ã¼¿¡ ´ë ÇÑ µµ¿ò¸»À» Ç¥½ÃÇÒ °Í ÀÌ´Ù. ÀÌ ¸ðµåÀÇ µµ¿òÀÌ CWinApp::OnContextHelp ¿¡ ÀÇÇØ Á¦°ø µË´Ï´Ù.

ÀÌ ·çÇÁ¸¦ ½ÇÇà ÇÏ´Â µ¿¾È ¸ðµç Űº¸µå ÀÔ·Â ¸Þ´º¿¡ ¾×¼¼½º Çϴ Ű¿¡ ´ë ÇÑ Á¦¿Ü ÇÏ °í Ȱ¼ºÈ­ µÇ¾î ÀÖÁö ¾Ê½À´Ï´Ù. ¶ÇÇÑ, ¸í·É ¹ø¿ª ¿©ÀüÈ÷ »ç¿ëÀÚ°¡ ¹Ù·Î °¡±â ۸¦ ´­·¯ ÇØ´ç ¸í·É¿¡ ´ë ÇÑ µµ¿òÀ» ¹ÞÀ» ¼ö ÀÖµµ·Ï ÇÏ·Á¸é PreTranslateMessage ¸¦ ÅëÇØ ¼öÇà¡£

ƯÁ¤ ¹ø¿ª ¶Ç´Â SHIFT + F1 µµ¿ò¸» ¸ðµå µ¿¾È Àå¼Ò °É¸®Áö PreTranslateMessage ÇÔ¼ö¿¡¼­ ÀϾ´Â ÀÛ¾÷ÀÌ ÀÖ´Â °æ¿ì ÀÌ·¯ÇÑ ÀÛ¾÷À» ¼öÇà Çϱâ Àü¿¡ CWinApp ÀÇ m_bHelpMode ¸â¹ö¸¦ È®ÀÎ ÇØ¾ß ÇÕ´Ï´Ù. PreTranslateMessage CDialog ±¸Çö ¿¹ IsDialogMessage¸¦ È£Ãâ Çϱâ Àü¿¡ÀÌ È®ÀÎ ÇÕ´Ï´Ù. ÀÌ SHIFT + F1 ¸ðµå µ¿¾È ¸ð´ú¸®½º ´ëÈ­ »óÀÚ¿¡ "´ëÈ­ Ž»ö" ۸¦ ºñȰ¼ºÈ­ÇÕ´Ï´Ù. ¶ÇÇÑ CWinApp::OnIdle ¿©ÀüÈ÷ÀÌ ·çÇÁ µ¿¾È È£Ãâ¡£

ÇØ´ç ¸í·É¿¡ ´ë ÇÑ µµ¿ò¸»À¸·Î ó¸® ÇÏ °í ¸Þ´º¿¡¼­ ¸í·ÉÀ» ¼±Åà ÇÏ´Â °æ¿ì ( WM_COMMANDHELP¸¦ ÅëÇØ ¾Æ·¡ ÂüÁ¶). »ç¿ëÀÚ°¡ ÀÀ¿ë ÇÁ·Î±×·¥ âÀÇ Ç¥½Ã ¿µ¿ªÀ» Ŭ¸¯ÇÒ °æ¿ì °áÁ¤ ºñŬ¶óÀÌ¾ðÆ® Å¬¸¯ ¶Ç´Â Ŭ¶óÀÌ¾ðÆ® Å¬¸¯ ÀÎÁö ÇÏ´Â °ÍÀ¸·Î ÀÌ·ç¾îÁý´Ï´Ù. OnContextHelp ÀÚµ¿À¸·Î Ŭ¶óÀÌ¾ðÆ® Å¬¸¯ ºñŬ¶óÀÌ¾ðÆ® Å¬¸¯ÀÇ ¸ÅÇÎÀ» ó¸® ÇÕ´Ï´Ù. Ŭ¶óÀÌ¾ðÆ® Å¬¸¯ À̸é Ŭ¸¯ â¿¡ WM_HELPHITTEST ´ÙÀ½ º¸³À´Ï´Ù. ±× â 0ÀÌ ¾Æ´Ñ °ªÀ» ¹Ýȯ ÇÏ´Â °æ¿ì ÇØ´ç °ª¿¡ ´ë ÇÑ µµ¿ò¸» ÄÁÅØ½ºÆ®µµ »ç¿ë µË´Ï´Ù. ±×°ÍÀº 0À» ¹Ýȯ ÇÏ´Â °æ¿ì OnContextHelp ºÎ¸ð ⠽õµ (±×¸®°í ½ÇÆÐ, ºÎ¸ð, ±âŸ µîµî). ±âº»°ª (ÀϹÝÀûÀ¸·Î) CWinApp::OnHelpIndex ¿¡ ¸ÅÇÎµÈ ´ÙÀ½ ÁÖ Ã¢ ID_DEFAULT_HELP ¸í·ÉÀ» º¸³¾Àº µµ¿ò¸» ÄÁÅØ½ºÆ®¸¦ È®ÀÎÇÒ ¼ö ¾ø´Â °æ¿ì¡£

WM_HELPHITTEST

afx_msg CWnd::OnHelpHitTest LRESULT (WPARAM, LPARAM lParam)

WM_HELPHITTEST Ȱ¼º â Áß SHIFT + F1 µµ¿ò¸» ¸ðµå¸¦ Ŭ¸¯ ÇÏ ¿© ¹ÞÀº MFC °³ÀÎ windows ¸Þ½ÃÁöÀÔ´Ï´Ù. Winhelp¿¡ ÀÇÇØ »ç¿ë¿¡ ´ë ÇÑ DWORD µµ¿ò¸» ID¸¦ ¹Ýȯ âÀÌÀÌ ¸Þ½ÃÁö¸¦ ¹ÞÀ¸¸é¡£

LOWORD(lParam)

âÀÇ Å¬¶óÀÌ¾ðÆ® ¿µ¿ªÀ» ±âÁØÀ¸·Î ¸¶¿ì½º Ŭ¸¯ ¾îµð Ãà ÀåÄ¡ ÁÂÇ¥¸¦ Æ÷ÇÔ¡£

HIWORD(lParam)

y Ãà ÁÂÇ¥¸¦ Æ÷ÇÔÇÕ´Ï´Ù.

wParam

»ç¿ë µÇÁö ¾ÊÀ¸¸ç 0ÀÌ µÉ °ÍÀÔ´Ï´Ù. ¹Ýȯ °ªÀÌ 0ÀÌ ¾Æ´Ñ °æ¿ì WinHelp ±× ÄÁÅØ½ºÆ®¿Í ÇÔ²² È£Ã⠵˴ϴÙ. ºÎ¸ð âÀÇ µµ¿ò¸»À» Äõ¸® ÇÏ´Â °æ¿ì ¹Ýȯ °ªÀÌ 0 ÀÎ °æ¿ì¡£

¸¹Àº °æ¿ì¿¡, ´ç½ÅÀº ÀÌ¹Ì ÀûÁß Å×½ºÆ® Äڵ带 Ȱ¿ëÇÒ ¼ö ÀÖ½À´Ï´Ù. CToolBar::OnHelpHitTest ÀÇ ±¸Çö (ÄÚµå ´ÜÃß ¹× CControlBar¿¡¼­ µµ±¸ ¼³¸í¿¡ »ç¿ë µÇ´Â ÀûÁß Å×½ºÆ® Äڵ带 Ȱ¿ë) WM_HELPHITTEST ¸Þ½ÃÁö¸¦ ó¸® ÇÏ´Â ¿¹¸¦ ÂüÁ¶ ÇϽʽÿÀ.

MFC AppWizard Áö¿ø ¹× MAKEHM

AppWizard µµ¿ò¸» ÆÄÀÏ (.cnt ¹×.hpj ÆÄÀÏ)¸¦ ±¸Ãà ÇÏ´Â µ¥ ÇÊ¿äÇÑ ÆÄÀÏÀ» ¸¸µì´Ï´Ù. ¶ÇÇÑ ¹Ì¸® ¼ö°¡ Æ÷ÇÔ µÇ¾îÀÖ½À´Ï´Ù.Microsoft µµ¿ò¸» ÄÄÆÄÀÏ·¯¿¡ ÀÇÇØ Çã¿ë µÇ´Â RTF ÆÄÀÏ. Ç׸ñÀÇ ´ëºÎºÐÀº ¿ÏÀü ÇÑ, ÇÏÁö¸¸ ÀϺΠƯÁ¤ ÀÀ¿ë ÇÁ·Î±×·¥¿¡ ´ë ÇÑ ¼öÁ¤ ÇØ¾ß ÇÒ ¼ö ÀÖ½À´Ï´Ù.

"¸ÅÇÎ µµ¿ò¸»" ÆÄÀÏÀÇ ÀÚµ¿ »ý¼ºÀº ¶ó´Â MAKEHM À¯Æ¿¸®Æ¼¿¡¼­ Áö¿ø µË´Ï´Ù. MAKEHM À¯Æ¿¸®Æ¼´Â ÀÀ¿ë ÇÁ·Î±×·¥ÀÇ ¸®¼Ò½º¸¦ ¹ø¿ªÇÒ ¼ö ÀÖ½À´Ï´Ù.H ÆÄÀÏÀ» µµ¿ò¸» ¸ÅÇÎ ÆÄÀÏÀÔ´Ï´Ù. ¿¹¸¦ µé¾î:

# define IDD_MY_DIALOGnbsp;? 2000
# define ID_MY_COMMAND 150(&N)

·Î ¹ø¿ª:

HIDD_MY_DIALOGnbsp;?? 0x207d0
HID_MY_COMMAND 0X10096(&N)

ÀÌ Çü½ÄÀº Ç׸ñ À̸§ (¿ÞÂÊ¿¡ ±âÈ£)¿Í ÇÔ²² ÄÁÅØ½ºÆ® Id (¿À¸¥ÂÊ¿¡ ÀÖ´Â ¼ýÀÚ)À» ¸ÅÇÎÇÏ´Â µµ¿ò¸» ÄÄÆÄÀÏ·¯ÀÇ ¼³ºñ¿Í ȣȯ¡£

MAKEHMÀÇ ¼Ò½º ÄÚµå´Â MFC ÇÁ·Î±×·¡¹Ö Utilties »ùÇÿ¡¼­ »ç¿ëÇÒ ¼ö ÀÖ´Â MAKEHM¡£

Appwizard¸¦ ½ÇÇà ÇÑ ÈÄ Ãß°¡ µµ¿ò¸» Áö¿ø

ÀÀ¿ë ÇÁ·Î±×·¥¿¡ µµ¿ò¸»À» Ãß°¡ ÇÏ´Â °¡Àå ÁÁÀº ¹æ¹ýÀº ÀÀ¿ë ÇÁ·Î±×·¥À» ¸¸µé±â Àü¿¡ ¸¶¹ý»çÀÇ ¿É¼Ç ´ëÈ­ »óÀÚ¿¡¼­ "ÄÁÅØ½ºÆ® ±¸ºÐ µµ¿ò¸»" ¿É¼ÇÀ» È®ÀÎ ÇÏ´Â °ÍÀÔ´Ï´Ù. ±×·± ½ÄÀ¸·Î AppWizard µµ¿ò¸»À» Áö¿ø Çϵµ·Ï CWinApp ÆÄ»ý Ŭ·¡½º¿¡ ÇÊ¿äÇÑ ¸Þ½ÃÁö ¸Ê Ç׸ñÀ» ÀÚµ¿À¸·Î Ãß°¡¡£

µµ¿ò¸» Áö¿ø ¾øÀÌ ÀÀ¿ë ÇÁ·Î±×·¥À» ÀÌ¹Ì ¸¸µç Áö±ÝÀº ±×°ÍÀ» Ãß°¡ ÇϰíÀÚ ÇÏ´Â °æ¿ì Visual c + + ÇÁ·Î±×·¡¸Ó °¡ÀÌµå ¸¦ ÂüÁ¶ ÇϽʽÿÀ.

¸Þ½ÃÁö »óÀÚ¿¡ ´ë ÇÑ µµ¿ò¸»

(°æ°í ¶ó°íµµ ÇÔ) ¸Þ½ÃÁö »óÀÚ¿¡ µµ¿ò¸» AfxMessageBox ÇÔ¼ö MessageBox Windows API¿¡ ´ë ÇÑ ·¡ÆÛ¸¦ ÅëÇØ Áö¿ø¡£

AfxMessageBox, ¹®ÀÚ¿­ ID¿Í ÇÔ²² »ç¿ë Çϱâ À§ÇØ Çϳª ¹× ´Ù¸¥ ¹®ÀÚ¿­ (LPCSTR)¿¡ ´ë ÇÑ Æ÷ÀÎÅÍ¿Í ÇÔ²² »ç¿ëÀÇ µÎ °¡Áö ¹öÀüÀÌ ÀÖ´Ù:

int AFXAPI AfxMessageBox(LPCSTR lpszText, UINT nType, UINT nIDHelp);
int AFXAPI AfxMessageBox(UINT nIDPrompt, UINT nType, UINT nIDHelp)

µÎ °æ¿ì¿¡´Â ¿É¼Ç µµ¿ò¸» ID¡£

ù ¹øÂ° °æ¿ì¿¡ NidhelpÀÇ ±âº»°ªÀº 0ÀÌ ¸Þ½ÃÁö »óÀÚ¿¡ ´ë ÇÑ µµ¿òÀ» ³ªÅ¸³À´Ï´Ù. °æ¿ì¿¡ ¸Þ½ÃÁö¿Í °°Àº »óÀÚ°¡ Ȱ¼ºÈ­ µÇ¾î µ¿¾È F1 ´©¸¦, (°æ¿ì¿¡ ÀÀ¿ë ÇÁ·Î±×·¥ÀÌ µµ¿ò¸» Áö¿ø) »ç¿ëÀÚ µµ¿ò¸»À» ¼ö½Å ÇÏÁö ¾Ê½À´Ï´Ù. Nidhelp¿¡ ´ë ÇÑ µµ¿ò¸» ID´Â Á¦°ø ÇØ¾ßÀÌ ¹Ù¶÷Á÷ÇÑ ¾øÀ¸¸é¡£

µÎ ¹øÂ°ÀÇ °æ¿ì, NidhelpÀÇ ±âº»°ªÀº-1 ³ªÅ¸³À´Ï´Ù µµ¿ò¸» ID Nidprompt¿Í °°½À´Ï´Ù. µµ¿ò¸» ÀÛµ¿ ÀÀ¿ë ÇÁ·Î±×·¥Àº µµ¿ò¸» »ç¿ë ÇÏ´Â °æ¿ì¿¡). ¸Þ½ÃÁö »óÀÚ µµ¿ò¸» Áö¿ø ÇØ¾ß ÇÏ´Â °ÍÀÌ ¿øÇÏ´Â °æ¿ì Nidhelp¿¡ ´ë ÇÑ 0À» Á¦°ø ÇØ¾ß ÇÕ´Ï´Ù. µµ¿ò¸»À» »ç¿ë ÇÏÁö¸¸ nIDPrompt º¸´Ù ´Ù¸¥ µµ¿ò¸» ID ¿å¸Á, nIDHelp NidpromptÀÇ ´Ù¸¥ ¾ç¼ö °ªÀ» Á¦°ø Çϱ⸸ ÇÏ¸é ¸Þ½ÃÁö¸¦ ¿øÇÏ´Â ÇØ¾ß¡£

±â¼ú ³ëÆ® ¹øÈ£·Î |nbsp; Ä«Å×°í¸®º° ±â¼ú ³ëÆ®(&N)

Index