°¡. ÆÄÀÏÅÇ

ÆÄÀÏÅÇÀº ¿­¸° ÆÄÀÏÀÇ ¸ñ·ÏÀ» º¸¿©ÁÖ°í ÅÇÀ» ´©¸£¸é ÇØ´ç ÆÄÀÏ·Î Æ÷Ä¿½º¸¦ ¿Å°ÜÁÖ´Â ÀåÄ¡ÀÌ´Ù. ºñÁÖ¾ó C++ µµ 7.0¹öÀüºÎÅÍ ÆÄÀÏÅÇÀ» Áö¿øÇÏ°í Àִµ¥ ÅÇÀ» ´­·¯ ÆíÁýÇÏ°íÀÚ ÇÏ´Â ÆÄÀÏÀ» Á÷Á¢ ¼±ÅÃÇÒ ¼ö ÀÖ´Ù´Â Á¡¿¡¼­ ¾ÆÁÖ Æí¸®ÇÏ´Ù. ÆÄÀÏÅÇÀÌ ¾ø´Ù¸é <Ctrl+Tab>À¸·Î ¿øÇÏ´Â ÆÄÀÏÀÌ ³ª¿Ã ¶§±îÁö Â÷Àϵ带 ½ºÀ§ÄªÇØ ºÁ¾ß Çϴµ¥ ¿­¸° ÆÄÀÏÀÌ ¸¹À¸¸é ¾ÆÁÖ ºÒÆíÇÏ´Ù.

´ç±ÙÀÇ ÆÄÀÏÅÇ À©µµ¿ì´Â ºñ·Ï ²®µ¥±âÁö¸¸ ¾Õ¿¡¼­ ¹Ì¸® ¸¸µé¾î µÎ¾ú´Âµ¥ ÀÌÁ¦ Á¦´ë·Î ¸¸µé¾îº¸ÀÚ. ¡®³ª ÆÄÀÏÅÇ¡¯ À̶ó°í Ãâ·ÂÇÏ´ø ½ä··ÇÑ À©µµ¿ì ÇÁ·Î½ÃÀú¸¦ ´ÙÀ½°ú °°ÀÌ ´Ù½Ã ÀÛ¼ºÇÑ´Ù.

 

LRESULT CALLBACK DGTabProc(HWND hWnd,UINT iMessage,WPARAM wParam,LPARAM lParam)

{

     HDC hdc;

     PAINTSTRUCT ps;

     HPEN hPen,OldPen;

     RECT crt;

 

     switch(iMessage) {

     case WM_CREATE:

          hFileTab=CreateWindow(WC_TABCONTROL,"",WS_CHILD | WS_VISIBLE

              |WS_CLIPSIBLINGS | TCS_FOCUSNEVER,

              0,0,0,0,hWnd,NULL,g_hInst,NULL);

          SendMessage(hFileTab,WM_SETFONT,(WPARAM)hGul9,(LPARAM)FALSE);

          hTabImg=ImageList_LoadBitmap(g_hInst, MAKEINTRESOURCE(IDB_TABS),

              12, 1, RGB(255,255,255));

          TabCtrl_SetImageList(hFileTab,hTabImg);

          return 0;

     case WM_SIZE:

          MoveWindow(hFileTab,0,2,LOWORD(lParam),HIWORD(lParam)-2,TRUE);

          return 0;

     case WM_PAINT:

          hdc=BeginPaint(hWnd, &ps);

          GetClientRect(hWnd,&crt);

          hPen=CreatePen(PS_SOLID,1,GetSysColor(COLOR_3DSHADOW));

          OldPen=(HPEN)SelectObject(hdc,hPen);

          MoveToEx(hdc,0,0,NULL);

          LineTo(hdc,crt.right,0);

          DeleteObject(SelectObject(hdc,OldPen));

          hPen=CreatePen(PS_SOLID,1,GetSysColor(COLOR_3DHILIGHT));

          SelectObject(hdc,hPen);

          MoveToEx(hdc,0,1,NULL);

          LineTo(hdc,crt.right,1);

          DeleteObject(SelectObject(hdc,OldPen));

          EndPaint(hWnd, &ps);

          return 0;

     case WM_DESTROY:

          ImageList_Destroy(hTabImg);

          return 0;

     }

     return(DefWindowProc(hWnd,iMessage,wParam,lParam));

}

 

ÆÄÀÏÅÇ Ç¥ÇöÀ» À§ÇØ Win32 ÅÇ ÄÁÆ®·ÑÀ» »ý¼ºÇßÀ¸¸ç TCS_FOCUSNEVER ½ºÅ¸ÀÏÀ» ÁÖ¾î Æ÷Ä¿½º¸¦ ¹ÞÁö ¸øÇϵµ·Ï ÇÏ¿´´Ù. ±×·¡¼­ ´ç±ÙÀÇ ÆÄÀÏÅÇÀº Å°º¸µå·Î´Â Á¶ÀÛÇÒ ¼ö ¾øÀ¸¸ç ¸¶¿ì½º·Î¸¸ Á¶ÀÛÇÒ ¼ö ÀÖ´Ù. °¢ ÅÇ¿¡´Â ÆíÁýÁßÀÎ ÆÄÀÏÀÇ À̸§°ú ÆÄÀÏÀÇ º¯°æ ¿©ºÎ¸¦ ¾Ë·ÁÁÖ´Â À̹ÌÁö¸¦ Ç¥½ÃÇϴµ¥ ¸®¼Ò½º¿¡´Â ´ÙÀ½ µÎ °³ÀÇ À̹ÌÁö°¡ ÀÛ¼ºµÇ¾î ÀÖ´Ù. ÆĶõ»ö ¹Ú½º´Â ÀÌ ÆÄÀÏÀÌ ¾ÆÁ÷ ÆíÁýµÇÁö ¾Ê¾Ò´Ù´Â ¶æÀÌ¸ç »¡°£»ö ¹Ú½º´Â ÆÄÀÏÀÌ ÆíÁýµÇ¾ú´Ù´Â ¶æÀÌ´Ù.

´Ù¸¥ ÄÁÆ®·Ñµé°ú ¸¶Âù°¡Áö·Î ÅÇ ÄÁÆ®·ÑÀÇ ÆùÆ®µµ ±¼¸² 9Æ÷ÀÎÆ®·Î º¯°æÇÏ¿´´Ù. ÅÇ ÄÁÆ®·ÑÀÌ ¿ö³« À۱⠶§¹®¿¡ ÆùÆ®µµ °¡±ÞÀûÀ̸é ÀÛ°Ô ¸¸µé¾î¾ß º¸±â¿¡ ÁÁ°í ÆÄÀϸíÀÌ ±æ¾îÁ®µµ ÅÇÀÌ Áö³ªÄ¡°Ô Ä¿Áö´Â °ÍÀ» ¹æÁöÇÒ ¼ö ÀÖ´Ù. WM_PAINT¿¡¼­´Â ÅÇ ÄÁÆ®·Ñ À§¿¡ 2Çȼ¿ÀÇ ÀÔüÀûÀÎ ¼öÆò¼±À» Á÷Á¢ ±×¸®´Âµ¥ ÀÌ ¼öÆò¼±Àº ÅÇ ÄÁÆ®·Ñ°ú Åø¹ÙÀÇ °æ°è¸¦ ¸íÈ®ÇÏ°Ô ±¸ºÐÇÏ´Â ¿ªÇÒÀ» ÇÑ´Ù. ¿ÞÂÊ ±×¸²Àº Åø¹Ù¿Í ÅÇ ÄÁÆ®·Ñ »çÀÌ¿¡ ¼öÆò¼±À» ±×Àº °ÍÀÌ°í ¿À¸¥ÂÊ ±×¸²Àº ±¸ºÐ¾øÀÌ µÎ ÄÁÆ®·ÑÀÌ ÀÎÁ¢ÇØ ÀÖ´Â ¸ð¾çÀε¥ ±¸ºÐ¼±ÀÌ ¾øÀ¸¸é »ó´çÈ÷ ¾î»öÇغ¸ÀδÙ.

 

ÅÇ ÄÁÆ®·ÑÀ» ´ç±ÙÀÇ Â÷Àϵå·Î ¹Ù·Î »ý¼ºÇÏÁö ¾Ê°í ÅÇ ÇÁ·¹ÀÓÀ» ¸¸µç ÈÄ ±× Â÷Àϵå·Î »ý¼ºÇÑ ÀÌÀ¯°¡ ¹Ù·Î ÀÌ ¼öÆò¼±À» ±ß±â À§Çؼ­ÀÌ´Ù. ÅÇ ÄÁÆ®·Ñ¿¡ À§ÂÊ °æ°è¼±À» ±ß´Â ½ºÅ¸ÀÏÀÌ Àְųª Åø¹Ù¿¡ ¾Æ·¡ÂÊ °æ°è¼±À» ±ß´Â ½ºÅ¸ÀÏÀÌ ÀÖ´Ù¸é ÀÌ·¸°Ô ÇÒ ÇÊ¿ä°¡ ¾ø°ÚÁö¸¸ ±×·± ½ºÅ¸ÀÏÀÌ ¾ø¾î¼­ ÅÇ ÇÁ·¹ÀÓ À©µµ¿ì¸¦ ¸¸µé°í Á÷Á¢ ¼±À» ±ßµµ·Ï Çß´Ù. ¸®¹Ù(Rebar) ÄÁÆ®·ÑÀ» ¸ÕÀú ¸¸µé°í ÀÌ ¾È¿¡ Åø¹Ù¸¦ ¹èÄ¡Çß´Ù¸é ÀÚ¿¬½º·´°Ô °æ°è¼±ÀÌ »ý±âÁö¸¸ ¸®¹Ù´Â ³Ê¹« º¹ÀâÇÏ´Ù.

WM_SIZE¿¡¼­ À§ÂÊÀÇ ¼öÆò¼± 2Çȼ¿À» Á¦¿ÜÇÑ ³ª¸ÓÁö ÀÛ¾÷¿µ¿ª Àüü¿¡ ÅÇ ÄÁÆ®·ÑÀ» °¡µæ ä¿ü´Ù. ÅÇ ÇÁ·¹ÀÓÀÇ ÀÛ¾÷¿µ¿ª ´ëºÎºÐÀ» ÅÇ ÄÁÆ®·ÑÀÌ Â÷ÁöÇÏ°í ÀÖÀ¸¹Ç·Î ÅÇ ÄÁÆ®·ÑÀÌ °ð ÆÄÀÏÅÇÀ̶ó°í »ý°¢ÇÏ¸é µÈ´Ù.