
CDialog Ŭ·¡½º´Â ȸ鿡 ´ëÈ »óÀÚ¸¦ Ç¥½Ã ÇÏ´Â µ¥ »ç¿ë µÇ´Â ±âº» Ŭ·¡½º°¡ÀÔ´Ï´Ù. ´ëÈ »óÀÚ´Â µÎ °¡Áö Á¾·ùÀÇ: ¸ð´Þ ¹× ¸ð´ú¸®½º. ¸ð´Þ ´ëÈ »óÀÚ´Â ÀÀ¿ë ÇÁ·Î±×·¥À» °è¼Ó Çϱâ Àü¿¡ »ç¿ëÀÚ°¡ ´Ý¾Æ¾ß ÇÕ´Ï´Ù. ¸ð´ú¸®½º ´ëÈ »óÀÚ¸¦ »ç¿ë ÇÏ¸é ´ëÈ »óÀÚ¸¦ Ç¥½Ã ÇÏ °í ´Ù¸¥ ÀÛ¾÷À» Ãë¼Ò Çϰųª ´ëÈ »óÀÚ¸¦ Á¦°Å ÇÏÁö ¾Ê°í ¹Ýȯ¡£
CDialog °³Ã¼ ´ëÈ »óÀÚ ÅÛÇø´À» CDialogÀÇ Á¶ÇÕ ÀÌ´Ù-Ŭ·¡½º¸¦ ÆÄ»ý ÇÕ´Ï´Ù. ´ëÈ »óÀÚ ÆíÁý±â¸¦ »ç¿ë ÇÏ ¿© ´ëÈ »óÀÚ ÅÛÇø´À» ÀÛ¼º ÇÏ °í ¸®¼Ò½º¿¡ ÀúÀå ´ÙÀ½ Classwizard¸¦ »ç¿ë ÇÏ ¿© CDialog ¿¡¼ ÆÄ»ý µÈ Ŭ·¡½º¸¦ ¸¸µé¡£
´Ù¸¥ ¾î¶² â ó·³ ´ëÈ »óÀÚ´Â Windows¿¡¼ ¸Þ½ÃÁö¸¦ ¹Þ½À´Ï´Ù. ´ëÈ »óÀÚ¿¡¼ ´ëÈ »óÀÚ ÄÁÆ®·Ñ¿¡¼ ¾Ë¸² ¸Þ½ÃÁö¸¦ ó¸® ÇÏ´Â ÀÌÈÄ »ç¿ëÀÚ ´ëÈ »óÀÚ¿Í »óÈ£ ÀÛ¿ë ÇÏ´Â ¹æ¹ý¿¡ ƯÈ÷ °ü½ÉÀÌ ÀÖ½À´Ï´Ù. ClassWizard ´ëÈ »óÀÚ¿¡ ÀÖ´Â °¢ ÄÁÆ®·Ñ¿¡ ÀÇÇØ »ý¼º µÈ ÀáÀçÀûÀÎ ¸Þ½ÃÁö¸¦ ÅëÇØ Ž»ö ÇÏ °í ó¸® ÇϰíÀÚ ÇÏ´Â ¸Þ½ÃÁö¸¦ ¼±ÅÃÇÒ ¼ö ÀÖ½À´Ï´Ù. ´ÙÀ½ Classwizard´Â ´ç½ÅÀ» À§ÇØ »õ Ŭ·¡½º¿¡ ÀûÀý ÇÑ ¸Þ½ÃÁö ¸Ê Ç׸ñ ¹× ¸Þ½ÃÁö 󸮱⠸â¹ö ÇÔ¼ö¸¦ Ãß°¡ÇÕ´Ï´Ù. ÀÀ¿ë ÇÁ·Î±×·¥º° ÄÚµå 󸮱⠸â¹ö ÇÔ¼ö¸¦ ÀÛ¼º ÇØ¾ß¡£
¿øÇÏ´Â °æ¿ì ÀÛ¼ºÇÒ ¼ö ÀÖ½À´Ï´Ù Ç×»ó ¸â¹ö ÇÔ¼ö¿Í ¸Þ½ÃÁö ¸Ê Ç׸ñ ÀڽŠClasswizard¸¦ »ç¿ë ÇÏ´Â ´ë½Å¡£
¸ðµç ÇÏÁö¸¸ °¡Àå »ç¼ÒÇÑ ´ëÈ »óÀÚ¿¡¼ ´ëÈ »óÀÚ ÄÁÆ®·Ñ¿¡ »ç¿ëÀÚ°¡ ÀÔ·Â ÇÑ µ¥ÀÌÅ͸¦ ÀúÀå Çϰųª »ç¿ëÀÚ¿¡ ´ë ÇÑ µ¥ÀÌÅ͸¦ Ç¥½Ã ÇÏ·Á¸é ÆÄ»ý µÈ ´ëÈ »óÀÚ Å¬·¡½º¿¡ ¸â¹ö º¯¼ö¸¦ Ãß°¡ ÇÕ´Ï´Ù. ClassWizard µ¥ÀÌÅÍ¿¡ ¸ÅÇÎÇÒ ¼ö ÀÖ´Â ´ëÈ »óÀÚ¿¡¼ ÀÌ·¯ÇÑ ÄÁÆ®·ÑÀ» ÅëÇØ Ž»ö ÇÏ °í °¢ ÄÁÆ®·ÑÀÇ ¸â¹ö º¯¼ö¸¦ ¸¸µé °ÍÀÎÁö ¹¯½À´Ï´Ù. µ¿½Ã¿¡, °¡º¯ À¯Çü ¹× °¢ º¯¼ö¿¡ ´ë ÇÑ °ªÀÇ Çã¿ë ¹üÀ§¸¦ ¼±ÅÃÇÕ´Ï´Ù. ÆÄ»ý µÈ ´ëÈ »óÀÚ Å¬·¡½º¿¡ ¸â¹ö º¯¼ö¸¦ Ãß°¡ ÇÏ´Â ¸¶¹ý»ç¡£
Classwizard´Â ´ÙÀ½ µ¥ÀÌÅÍ ¸ÊÀ» ¸â¹ö º¯¼ö¿Í ´ëÈ »óÀÚÀÇ ÄÁÆ®·Ñ »çÀÌ µ¥ÀÌÅÍ ±³È¯À» ÀÚµ¿À¸·Î 󸮸¦ ¾¹´Ï´Ù. µ¥ÀÌÅÍ ¸Ê ÀûÀý ÇÑ °ªÀ¸·Î ´ëÈ »óÀÚÀÇ ÄÁÆ®·ÑÀ» ÃʱâÈ ÇÏ °í µ¥ÀÌÅ͸¦ °Ë»ö ÇÏ °í µ¥ÀÌÅÍÀÇ À¯È¿¼ºÀ» °Ë»ç ÇÏ´Â ±â´ÉÀ» Á¦°ø ÇÕ´Ï´Ù.
¸ð´Þ ´ëÈ »óÀÚ¸¦ ¸¸µé·Á¸é ÆÄ»ý µÈ ´ëÈ »óÀÚ Å¬·¡½º¿¡ ´ë ÇÑ »ý¼ºÀÚ¸¦ »ç¿ë ÇÏ ¿© ½ºÅÿ¡ °³Ã¼¸¦ »ý¼º ÇÏ °í ´ëÈ Ã¢ ¹× ÇØ´ç ÄÁÆ®·ÑÀ» ¸¸µå´Â DoModal À» È£Ãâ ÇÕ´Ï´Ù. ¸ð´ú¸®½º ´ëÈ »óÀÚ¸¦ »ý¼º ÇϰíÀÚ ÇÏ´Â °æ¿ì ´ëÈ »óÀÚ Å¬·¡½ºÀÇ »ý¼ºÀÚ¿¡¼ Create ¸¦ È£ÃâÇÕ´Ï´Ù¡£
»ç¿ë ÇÏ ¿© ¸Þ¸ð¸®¿¡ ¼½Ä ÆÄÀÏÀ» ¸¸µé ¼öµµ DLGTEMPLATE µ¥ÀÌÅÍ ±¸Á¶ Win32 SDK ¼³¸í¼¿¡ ¼³¸í µÈ ´ë·Î. CDialog °³Ã¼¸¦ »ý¼º ÇÑ ÈÄ CreateIndirect ¸ð´ú¸®½º ´ëÈ »óÀÚ¸¦ ¸¸µå´Â È£Ãâ Çϰųª ¸ð´Þ ´ëÈ »óÀÚ¸¦ ¸¸µå´Â InitModalIndirect ¿Í DoModal È£Ãâ¡£
Classwizard¿¡¼ ClassWizard »õ ´ëÈ »óÀÚ Å¬·¡½º¿¡ Ãß°¡ ÇÏ´Â CWnd::DoDataExchange ¸¦ ÀçÁ¤ÀÇ ÇÏ´Â ±³È¯ ¹× À¯È¿¼º °Ë»ç µ¥ÀÌÅÍ Áöµµ¸¦ ¾¹´Ï´Ù. ±³È¯ ¹× À¯È¿¼º °Ë»ç ±â´É¿¡ ´ë ÇÑ ÀÚ¼¼ÇÑ CWnd ¿¡¼ DoDataExchange ¸â¹ö ÇÔ¼ö¸¦ ÂüÁ¶ ÇϽʽÿÀ.
ÇÁ·Î±×·¡¸Ó¿Í ÇÁ·¹ÀÓ ¿öÅ© È£Ãâ ÇÏÁö DoDataExchange Á÷Á¢ CWnd::UpdateData ¿¡ ´ë ÇÑ È£ÃâÀ» ÅëÇØ¡£
¸ð´Þ ´ëÈ »óÀÚ¸¦ ´ÝÀ¸·Á¸é È®ÀÎ ´ÜÃ߸¦ Ŭ¸¯ Çϸé UpdateData ¸¦ È£Ãâ ÇÏ´Â ÇÁ·¹ÀÓ ¿öÅ©. (µ¥ÀÌÅÍ °Ë»ö µÇÁö ¾Ê½À´Ï´Ù Ãë¼Ò ´ÜÃ߸¦ Ŭ¸¯ ÇÏ´Â °æ¿ì.) OnInitDialog ±âº» ±¸Çö UpdateData ÄÁÆ®·ÑÀÇ Ãʱ⠰ªÀ» ¼³Á¤ ÇÏ·Á¸é È£Ãâ ÇÕ´Ï´Ù. ÀϹÝÀûÀ¸·Î Ãß°¡ ÄÁÆ®·ÑÀ» ÃʱâÈ ÇÏ·Á¸é OnInitDialog ÀçÁ¤ÀÇ ÇÕ´Ï´Ù. ¸ðµç ´ëÈ »óÀÚ ÄÁÆ®·Ñ ¸¸µé°í Á÷Àü ´ëÈ »óÀÚ°¡ Ç¥½Ã µË´Ï´Ù ÈÄ OnInitDialog ¶ó°í¡£
¸ð´Þ ¶Ç´Â ¸ð´ú¸®½º ´ëÈ »óÀÚ¸¦ ½ÇÇà ÇÏ´Â µ¿¾È ¾ðÁ¦ µç Áö CWnd::UpdateData ¸¦ È£ÃâÇÒ ¼ö ÀÖ½À´Ï´Ù.
´ëÈ »óÀÚ¸¦ Á÷Á¢ °³¹ß ÇÏ´Â °æ¿ì ÇÊ¿äÇÑ ¸â¹ö º¯¼ö ÆÄ»ý µÈ ´ëÈ »óÀÚ Å¬·¡½º¿¡ ÀÚ½ÅÀ» Ãß°¡ÇÑ ¼³Á¤ Çϰųª ÀÌ·¯ÇÑ °ªÀ» ¸â¹ö ÇÔ¼ö Ãß°¡¡£
Classwizard¿¡ ÀÚ¼¼ÇÑ ³»¿ëÀº ÂüÁ¶ ClassWizard¸¦ »ç¿ë ÇÏ ¿© Visual c + + ÇÁ·Î±×·¡¸Ó °¡À̵塣
ÀÀ¿ë ÇÁ·Î±×·¥¿¡¼ ´ëÈ »óÀÚ¿¡ ´ë ÇÑ ¹è°æ »öÀ» ¼³Á¤ ÇÏ·Á¸é ÀüÈ CWinApp::SetDialogBkColor¡£
»ç¿ëÀÚ°¡ OK ¶Ç´Â Cancel ´ÜÃ߸¦ ´©¸¦ ¶§ ¶Ç´Â Äڵ忡¼ EndDialog ¸â¹ö ÇÔ¼ö¸¦ È£Ãâ ÇÏ´Â ¶§ ¸ð´Þ ´ëÈ »óÀÚ°¡ ÀÚµ¿À¸·Î ´ÝÈü´Ï´Ù.
¸ð´ú¸®½º ´ëÈ »óÀÚ¸¦ ±¸Çö Çϸé Ç×»ó OnCancel ¸â¹ö ÇÔ¼ö¸¦ ÀçÁ¤ÀÇ ÇÏ °í ±× ¾È¿¡¼ DestroyWindow ¿¡¼ È£Ãâ ÇÕ´Ï´Ù. EndDialog, º¸ÀÌÁö ¾Ê´Â ´ëÈ »óÀÚ¸¦ ¸¸µé °ÍÀÔ´Ï´Ù ÇÏÁö¸¸ ±×°ÍÀ» ÆÄ±« ÇÏÁö ¾Ê½À´Ï´Ù¸¦ È£Ãâ Çϱ⠶§¹®¿¡ CDialog::OnCancel, ±âº» Ŭ·¡½º¸¦ È£Ãâ ÇÏÁö ¸¶½Ê½Ã¿À. ¶ÇÇÑ »èÁ¦ ÇÏ·Á¸é À̸ð´ú¸®½º ´ëÈ »óÀÚ´Â »õ¿Í ÇÔ²² ÀϹÝÀûÀ¸·Î ÇÒ´ç µÈ ÀÌÈÄ PostNcDestroy ¸ð´ú¸®½º ´ëÈ »óÀÚ¸¦ ÀçÁ¤ÀÇ ÇØ¾ß ÇÕ´Ï´Ù. ¸ð´Þ ´ëÈ »óÀÚ ÇÁ·¹ÀÓ¿¡ ÀϹÝÀûÀ¸·Î °Ç¼³ ÇÏ´Â °í PostNcDestroy Á¤¸® ÇÊ¿ä ÇÏÁö ¾Ê½À´Ï´Ù.
CDialog¿¡¼ ÀÚ¼¼ÇÑ ³»¿ëÀº ´ÙÀ½ À¥ »çÀÌÆ®¸¦ ÂüÁ¶ ÇϽʽÿÀ. ¹®¼ ´ëÈ »óÀÚ Ç׸ñ Visual c + + ÇÁ·Î±×·¡¸Ó °¡À̵塣
# include lt;afxwin.h>
Ŭ·¡½º ¸â¹ö |nbsp; ±âº» Ŭ·¡½º (ko) | °èÃþ ±¸Á¶ Â÷Æ®(&N)
Samples MFC Sample DBFETCH | MFC Sample DLGCBR32 | MFC Sample DLGTEMPL | MFC Sample EXTBIND | MFC Sample FTPTREE | MFC Sample HELLO | MFC Sample MDIBIND | MFC Sample VCTERM