Percent Dialog

 ¾î¶² ÀÛ¾÷ÀÌ ¿À·§µ¿¾È ÁøÇàµÇ´Âµ¥µµ È­¸é¿¡ ¾Æ¹«·± º¯È­°¡ ¾ø´Ù¸é »ç¿ëÀÚ´Â ÄÄÇ»ÅͰ¡ ´Ù¿îµÇ¾ú´õ°í »ý°¢ÇÒ ¼öµµ ÀÖ´Ù. ±×·¡¼­ È­¸é¿¡ ¹«¾ð°¡ ÀÛ¾÷ÀÌ ÁøÇàµÇ°í Àִٴ ǥ½Ã¸¦ ÇØÁÖ´Â°Ô ÁÁ´Ù. ¿©±â¼­ ¼Ò°³ÇÏ·Á´Â °ÍÀº ÆÄÀÏÀ» ÀνºÅçÇÒ ¶§ ÈçÈ÷ º¼ ¼ö ÀÖ´Â ¹éºÐÀ² ´ÙÀ̾ó·Î±×ÀÌ´Ù. ÀÛ¾÷ÀÌ ÁøÃ´µÇ´Â Á¤µµ¿¡ µû¶ó ¹éºÐÀ² ¸·´ë°¡ Á¡Á¡ ±æ¾îÁö°í ±× ¸·´ë °¡¿îµ¥¿¡ ¼ýÀÚ·Î ÆÛ¼¾Æ®°¡ Ç¥½ÃµÇ´Â ±×·± ´ÙÀ̾ó·Î±× ¸»ÀÌ´Ù.

 ¾Ë°í ÀÖ°ÚÁö¸¸ ÀÌ·± ÇüÅÂÀÇ ´ÙÀ̾ó·Î±×ÀÇ °æ¿ì ¾Ë¾Æ¼­ ³ªÅ¸³µ´Ù°¡ ¾ø¾îÁú ¶§µµ ¾Ë¾Æ¼­ ¾ø¾îÁ®¾ß ÇÑ´Ù. ±×·¯¹Ç·Î DoModal() ÇÔ¼ö¸¦ »ç¿ëÇÏÁö ¾Ê°í, ´ÙÀ̾ó·Î±×¸¦ µð½ºÇ÷¹ÀÌÇÏ´Â Create() ÇÔ¼ö¸¦ È£ÃâÇÑ´Ù.

- Áö¿ø API

CPercentDialog::Initialize()

CPercentDialog::SetPercent()

 

- Àû¿ëÇϱâ

1. ¼Ò½º¸¦ ´Ù¿î¹Þ´Â´Ù. ÀÌ ¼Ò½ºµéÀ» ÇÁ·ÎÁ§Æ®¿¡ Ãß°¡ÇÑ´Ù.

2. ¼Ò½º¿¡ Æ÷ÇÔµÈ Percent.rc ÆÄÀÏÀ» ¿­¾î ¹éºÐÀ² ´ÙÀ̾ó·Î±× ÅÛÇø´À» ÇÁ·ÎÁ§Æ®¿¡ º¹»çÇÑ´Ù. (º¹»ç-ºÙ¿©³Ö±â¸¦ ÇØµµ µÇ°í, Ctrl-drag ÇØµµ µÈ´Ù.)

3. »ç¿ëÇϱ⸦ ¿øÇÏ´Â ¸ðµâÀÇ Ã³À½¿¡ ÆÛ¼¾Æ® ´ÙÀ̾ó·Î±×ÀÇ Çì´õÆÄÀÏÀ» Æ÷ÇÔÇÑ´Ù.

          #include "percent.h"

4. ´ÙÀ½°ú °°Àº Äڵ带 ¿øÇÏ´Â ºÎºÐ¿¡ ³Ö´Â´Ù. ¿©±â¼­´Â ºä¿¡¼­ ¿ÞÂÊ ¸¶¿ì½º ¹öưÀ» ´õºíŬ¸¯ÇÏ¸é ÆÛ¼¾Æ® ´ÙÀ̾ó·Î±×°¡ ³ªÅ¸³ªµµ·Ï ÇØ º¸¾Ò´Ù. ¹°·Ð À§ 3¹øÀÇ Çì´õÆÄÀϵµ ºäÀÇ cpp ÆÄÀÏ¿¡ Æ÷ÇԵǾú´Ù. °¡¿îµ¥ ºÎºÐ¿¡ ³ÖÀº »¡°£ ±Û¾¾ ºÎºÐ¿¡ ¿øÇÏ´Â ÀÛ¾÷À» ³ÖÀ¸¸é µÈ´Ù. ¿©±â¼­´Â ³Ê¹« ºü¸¥ ¼Óµµ ¶§¹®¿¡ ÆÛ¼¾Å×ÀÌÁö ´ÙÀ̾ó·Î±×¸¦ Á¦´ë·Î º¼ ¼ö°¡ ¾ø¾î¼­ ÀϺη¯ for ¹® 2°³¸¦ ³Ö¾î ½Ã°£À» Áö¿¬½ÃÄ×´Ù.

void CPercentDlgView::OnLButtonDblClk(UINT nFlags, CPoint point)
{
        // TODO: Add your message handler code here and/or call default
        CPercentDialog *pDlg;
        pDlg = new CPercentDialog;
        pDlg->Initialize("Working...", "Please Wait while working.");
        for(int i=1; i<=100; i++) {
                //////////////////////////////////////
                //¿©±â¼­ ÀÛ¾÷
                for(int j=0; j<300000; j++);
                for(int k=0; k<300000; k++);
                //////////////////////////////////////

                pDlg->SetPercent(i);
        }
        pDlg->DestroyWindow();
        delete pDlg;
                
        CView::OnLButtonDblClk(nFlags, point);
}