CDialog

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

Index