|
1.¿ä¾à ÀϹÝÀûÀÎ °æ¿ì Draw ¼Óµµ¸¦ ºü¸£°Ô Çϱâ À§Çؼ ¸Þ¸ð¸® DC ¸¦ »ç¿ëÇÕ´Ï´Ù. °£´ÜÇÑ Äڵ带 º¸¸é¼ ±× °úÁ¤À» »ìÆìº¸°Ú½À´Ï´Ù. 2.º»¹® ƯÁ¤ ¿µ¿ª¿¡ ¿©·¯¹ø ¸¹Àº °úÁ¤À» °ÅÃļ ±×¸²À» ±×·ÁÁÖ°Ô µÈ´Ù¸é, Çѹø¿¡ Çϳª¾¿ ȸ鿡 ±×¸®´Â °Íº¸´Ù´Â, ȸé°ú °°Àº ¸ð½ÀÀ» Çϰí Àִ ȸ鿡 ±×¸²À» ±×¸°ÈÄ, ÃÖÁ¾ÀûÀ¸·Î ¿Ï¼ºµÈ °ÍÀ» ȸ鿡 ±×¸®´Â °ÍÀÌ ÈξÀ ºü¸¦°ÍÀÔ´Ï´Ù. Áï, ¸Þ¸ð¸®¸¦ »ç¿ëÇϸé ÈξÀ ºü¸£´Ù´Â °ÍÀÌÁÒ. ÀÌ·¸°Ô ¸Þ¸ð¸®»ó¿¡ Á¸ÀçÇÏ´Â DC ¸¦ ÀÌ¿ëÇÏ¿© ȸéÀ» ±×·ÁÁÖ´Â °ÍÀ» ¸Þ¸ð¸® DC ¶ó°í ÇÕ´Ï´Ù. ¹æ¹ýÀº ÇöÀç ȸéÀÇ DC ¿Í °°Àº DC ¸¦ ¸¸µé¾î¼ ±× DC ¿¡ ƯÁ¤ bitmapÀ» ¼ÂÆÃÇØÁØ´ÙÀ½ ±× bitmap ¿¡ ±×¸²À» ±×·ÁÁÖ°í ±× Bitmap À» »ç¿ëÇÏ¿© ´Ù½Ã ±×¸²À» ¿ø·¡ÀÇ È¸é DC ¿¡ Çѹø¿¡ ±×·ÁÁÖ´Â ¿ø¸®ÀÔ´Ï´Ù. ¾Æ·¡ÀÇ ¿¹Á¦¸¦ º¸½Ã¸é ÈξÀ ÀÌÇØ°¡ ºü¸£½Ã¸®¶ó ¹Ï½À´Ï´Ù. ^^. 3.¿¹Á¦
// ȸé°ú °ü·ÃµÈ DC ¸¦ ¾ò½À´Ï´Ù.
CClientDC dc(this);
// Client ¿µ¿ªÀÇ Å©±â¸¦ ±¸ÇÕ´Ï´Ù.
CRect rcClient;
GetClientRect(&rcClient);
CBitmap Bitmap; // ¸Þ¸ð¸® DC ¿¡ »ç¿ëµÉ Bitmap
CBitmap* pbmOld = NULL;
// ¸Þ¸ð¸® DC º¯¼ö ¼±¾ð
CDC dcMem;
// ÇöÀç ȸé°ú ´àÀº²ÃÀÎ ¸Þ¸ð¸® DC »ý¼º
dcMem.CreateCompatibleDC(&dc);
// ¸Þ¸ð¸® DC ÀÇ Àüü ȸéÀ» ´ãÀ» ¼ö ÀÖ´Â Å©±âÀÇ bitmap »ý¼º
Bitmap.CreateCompatibleBitmap(&dc,rcClient.right,rcClient.bottom);
// ¸Þ¸ð¸® DC ÀÇ bitmap À» »õ·Î¿î bitmap À» »ý¼ºÇÕ´Ï´Ù.
pbmOld = dcMem.SelectObject(&Bitmap);
// ±×¸²À» ÇϾé°Ô Ä¥Çϱâ
dcMem.PatBlt(0, 0,rcClient.right, rcClient.bottom, WHITENESS);
// ÀÌÁ¦ ¸Þ¸ð¸® DC ¿¡ ±×¸²À» ±×¸³´Ï´Ù.
// ¼Óµµ ¯!!!
// ...
// ...
// ...
// ÀÌÁ¦ ´Ù ±×·ÈÀ¸´Ï±î ¿ø·¡ Àִ ȸé dc ¿¡ ¸Þ¸ð¸® dc¸¦ »ç¿ëÇÏ¿© ±×¸²À» ±×¸³´Ï´Ù.
dc.BitBlt(0,0,rcClient.right,rcClient.bottom,
&dcMem, 0, 0, SRCCOPY);
// ¸¶¹«¸® ÀÛ¾÷
// °´Ã¼ delete
dcMem.SelectObject(pbmOld);
dcMem.DeleteDC();
- 2001.08.13 Smile Seo - |