|
|||||
- File #1 : Image1001.jpg(), Download : 23 |
À̹ø¿£ µµÇü ±×¸®±â¸¦ ÀÀ¿ëÇؼ ȸéÀ» ²Ù¹Ì´Â ¹æ¹ýÀ» Çѹø ¿¬½ÀÇØ º¸°Ú½À´Ï´Ù. ÄÄÇ»ÅÍ ÇÁ·Î±×·¡¹ÖÀº ¹è¿ì´Â °Í º¸´Ù ¹è¿î °ÍÀ» ¿¬½ÀÇؼ Àڱ⠰ÍÀ¸·Î ¸¸µå´Â °ÍÀÌ ´õ Áß¿äÇÕ´Ï´Ù. ÄÄÇ»ÅÍ °øÇаú¸¦ Á¹¾÷Çؼ ÇÁ·Î±×·¡¹ÖÀ» ¸øÇÏ´Â °ÍÀº ¹è¿î °ÍÀ» °¡Áö°í ¾Æ¹« °Íµµ ÇÏÁö ¾Ê¾Ò±â ¶§¹®ÀÔ´Ï´Ù. Å«(?) ÇÁ·Î±×·¥ ÇÑ µÎ°³¸¸ Â¥µµ ¹«¾ùÀÌµç ¸¸µé ¼ö ÀÖ´Ù´Â ÀڽۨÀ» ¾ò°Ô µË´Ï´Ù. 1. »õ·Î¿î ÇÁ·ÎÁ§Æ® Exam10À» ¸¸µì´Ï´Ù. 2. WinMain ÇÔ¼ö À§¿¡ ¾Æ·¡ Äڵ带 Ãß°¡ÇÕ´Ï´Ù. VOID ButtonDraw( HDC hdc, int x, int y, int cx, int cy, COLORREF cr, TCHAR* str ) { POINT po[4]; HBRUSH br; RECT rect; po[0].x = x; po[0].y = y; po[1].x = x+cx-1; po[1].y = y; po[2].x = x+cx-1; po[2].y = y+cy-1; po[3].x = x; po[3].y = y+cy-1; SetRect( &rect, x, y, x+cx, y+cy ); br = CreateSolidBrush( cr ); SelectObject( hdc, br ); Polygon( hdc, po, 4 ); DeleteObject( br ); SetBkMode( hdc, TRANSPARENT ); DrawText( hdc, str, wcslen(str), &rect, DT_VCENTER | DT_CENTER ); } ÀÌ °ÍÀº ȸ鿡 Á¦ ³ª¸§´ë·Î ¹öÆ° ¸ð¾çÀ» ±×·ÁÁÖ´Â ÇÔ¼öÀÔ´Ï´Ù. Àμö¸¦ Â÷·Ê´ë·Î ¼³¸íÇϸé DCÀÇ ÇÚµé, °¡·Î Ãâ·ÂÁÂÇ¥, ¼¼·Î Ãâ·ÂÁÂÇ¥, °¡·Î ±æÀÌ, ¼¼·Î ±æÀÌ, ¹öÆ°ÀÇ »ö»ó, ¹öÆ°ÀÇ À̸§¼øÀÔ´Ï´Ù. po[0].x = x; po[0].y = y; po[1].x = x+cx-1; po[1].y = y; po[2].x = x+cx-1; po[2].y = y+cy-1; po[3].x = x; po[3].y = y+cy-1; ¿ÜºÎ Å׵θ®ÀÇ ÁÂÇ¥¸¦ POINT Çü º¯¼ö¿¡ ³Ö½À´Ï´Ù. Polygon ÇÔ¼ö¸¦ È£ÃâÇϱâ À§ÇØ ÁÂÇ¥¸¦ ¹è¿¿¡ ³Ö´Â °ÍÀÔ´Ï´Ù. x+cx-1 Àº ½ÃÀÛÁÂÇ¥+±æÀÌ-1 ÀÌ ³¡ ÁÂÇ¥°¡ µÇ±â ¶§¹®ÀÔ´Ï´Ù. ÇÁ·Î±×·¡¹ÖÀ» ÇÏ°Ô µÇ¸é ÀÌ·± ¼ö½ÄÀ» ¸¸µé¾î ³»´Â °ÍÀÌ ¸Å¿ì Áß¿äÇÕ´Ï´Ù. SetRect( &rect, x, y, x+cx, y+cy ); ±ÛÀÚ¸¦ Á߽ɺο¡ Ãâ·ÂÇϱâ À§ÇØ »ç°¢ÇüÀÇ ÁÂÇ¥º¯¼ö rectÀÇ °ªÀ» ¼³Á¤ÇÕ´Ï´Ù. br = CreateSolidBrush( cr ); »õ·Î¿î ºê·¯½¬(º×)À» ¸¸µé¾î br º¯¼ö°¡ °¡¸®Å°°Ô ÇÕ´Ï´Ù. ÀÌÁ¦ DC °¡ ÀÌ º×À» ¼±ÅÃÇϸé ÀÌ º×ÀÌ ÁöÁ¤ÇÑ ´ë·Î ¸éÀÇ »ö»óÀÌ °áÁ¤µË´Ï´Ù. SelectObject( hdc, br ); DC °¡ »õ·Î¿î º×À» ¼±ÅÃÇÕ´Ï´Ù. Polygon( hdc, po, 4 ); ÁöÁ¤µÈ ÁÂÇ¥´ë·Î »ç°¢ÇüÀ» ±×¸³´Ï´Ù. À̶§ ¸éÀÇ »ö»óÀÌ À§¿¡ ¼³Á¤µÈ º×¿¡ ÀÇÇØ °áÁ¤µË´Ï´Ù. DeleteObject( br ); ´Ù ±×·ÈÀ¸¸é ÀÌÁ¦ º×À» ¸Þ¸ð¸®¿¡¼ Á¦°ÅÇÕ´Ï´Ù. SetBkMode( hdc, TRANSPARENT ); ±ÛÀÚ¸¦ Ãâ·ÂÇÒ ¶§ Åõ¸í ¸ðµå·Î Ãâ·ÂÇÏ°Ô ÇÕ´Ï´Ù. Åõ¸í ¸ðµå¶ó´Â °ÍÀº ¹è°æ¿¡ ±×¸²ÀÌ ÀÖÀ» ¶§ ±×¸²À» Áö¿ìÁö ¾Ê°í ±ÛÀÚ¸¦ Ãâ·ÂÇؼ ±ÛÀÚ »çÀÌ·Î ±×¸²ÀÌ º¸À̵µ·Ï Ãâ·ÂÇ϶ó´Â °ÍÀÔ´Ï´Ù. DrawText( hdc, str, wcslen(str), &rect, DT_VCENTER | DT_CENTER ); ¹öÆ°ÀÇ Á¦¸ñÀ» ȸ鿡 Ãâ·ÂÇÕ´Ï´Ù. 3. WndProc ÇÔ¼ö·Î °¡¼ WM_PAINT¿¡¼ LoadString Çà°ú DrawText ÇàÀ» Áö¿ó´Ï´Ù. 4. LoadString ÇàÀÌ ÀÖ´ø ÀÚ¸®¿¡ ¾Æ·¡ Äڵ带 Ãß°¡ÇÕ´Ï´Ù. ButtonDraw( hdc, 0, 0, 240, 40, RGB(127,255,127), Lµµ½Ã¹Ù »ç¿ëÀÚ ¸ðÀÓ ); ButtonDraw( hdc, 40, 80, 160, 38, RGB(127,127,255), LÀÚÀ¯ °Ô½ÃÆÇ); ButtonDraw( hdc, 40, 120, 160, 38, RGB(127,127,255), LÁú¹®°ú ´ä); ButtonDraw( hdc, 40, 160, 160, 38, RGB(127,127,255), L»ç¿ëÀÚ ¸®ºä & ÆÁ); ButtonDraw( hdc, 40, 200, 160, 38, RGB(127,127,255), LÀÚ·á½Ç); °¢°¢ÀÇ ¹öÆ° ¸ð¾çÀ» ȸ鿡 ±×¸®´Â °ÍÀÔ´Ï´Ù. À§ ±×¸²ÀÇ °á°ú¿Í ºñ±³ÇØ º¸¼¼¿ä. 5. ÇÁ·Î±×·¥À» ½ÇÇà½ÃÄÑ º¸¼¼¿ä. |
| ||
| ||
| ||
|
|