日韩久久久精品,亚洲精品久久久久久久久久久,亚洲欧美一区二区三区国产精品 ,一区二区福利

修改后的CMemDC類(lèi)

系統(tǒng) 2241 0

修改后的CMemDC類(lèi):(增加了紅色的那行,非常重要喔。另外加了些注釋)
/////////////////////////////////////////////////////////////////////////////
// CMemDC

class CMemDC : public CDC
{
public:
?? CDCHandle???? m_dc;????????? // 屏幕的DC Owner DC
?? CBitmap?????? m_bitmap;????? // Offscreen bitmap
?? CBitmapHandle m_hOldBitmap;? // Originally selected bitmap
?? RECT????????? m_rc;????????? // Rectangle of drawing area

?? CMemDC(HDC hDC, LPRECT pRect, COLORREF clrBackGround = 0)
?? {
????? ATLASSERT(hDC!=NULL);
?? //保存屏幕的DC到m_dc中
?? m_dc = hDC;

????? if( pRect!=NULL )
?? {
??? m_rc = *pRect;
?? }
?? else
?? {
??? m_dc.GetClipBox(&m_rc);
?? }

?? //將被本窗口覆蓋了的父窗口的區(qū)域填充至本窗口的背景

??? //調(diào)用CDC的CreateCompatibleDC(),它會(huì)給父類(lèi)CDC的成員變量m_hDC賦值
?? CreateCompatibleDC(hDC);
??
????? ::LPtoDP(hDC, (LPPOINT) &m_rc, sizeof(RECT)/sizeof(POINT));
?? //讀取屏幕位圖到m_bitmap
????? m_bitmap.CreateCompatibleBitmap(hDC, m_rc.right-m_rc.left, m_rc.bottom-m_rc.top);
??
?? //CDC選擇新位圖,并保存舊的位圖
????? m_hOldBitmap = SelectBitmap(m_bitmap);
?? //在CDC中畫(huà)圖,將原先的屏幕復(fù)制到內(nèi)存中
?? BitBlt(0, 0, m_rc.right-m_rc.left, m_rc.bottom-m_rc.top, hDC, m_rc.left, m_rc.top, SRCCOPY);

?? //設(shè)置CDC的背景色為#FF00FF
?? SetBkColor(RGB(0,255,0));
????? ::DPtoLP(m_dc, (LPPOINT) &m_rc, sizeof(RECT)/sizeof(POINT));
????? SetWindowOrg(m_rc.left, m_rc.top);

?? //add by Robert
?? if(clrBackGround != 0)
?? {
??CBrush brush;
??brush.CreateSolidBrush(clrBackGround);
??FillRect(pRect, (HBRUSH)brush);
?? }
?? //end add
?? }
?? ~CMemDC()
?? {
????? // Copy the offscreen bitmap onto the screen.
??? //注意,是從父類(lèi)的m_hDC中復(fù)制位圖到屏幕
????? m_dc.BitBlt(m_rc.left, m_rc.top, m_rc.right-m_rc.left, m_rc.bottom-m_rc.top,
????????????????? m_hDC, m_rc.left, m_rc.top, SRCCOPY);
????? // CDC恢復(fù)以前的位圖 Swap back the original bitmap.
????? SelectBitmap(m_hOldBitmap);
?? }
};

修改后的CMemDC類(lèi)


更多文章、技術(shù)交流、商務(wù)合作、聯(lián)系博主

微信掃碼或搜索:z360901061

微信掃一掃加我為好友

QQ號(hào)聯(lián)系: 360901061

您的支持是博主寫(xiě)作最大的動(dòng)力,如果您喜歡我的文章,感覺(jué)我的文章對(duì)您有幫助,請(qǐng)用微信掃描下面二維碼支持博主2元、5元、10元、20元等您想捐的金額吧,狠狠點(diǎn)擊下面給點(diǎn)支持吧,站長(zhǎng)非常感激您!手機(jī)微信長(zhǎng)按不能支付解決辦法:請(qǐng)將微信支付二維碼保存到相冊(cè),切換到微信,然后點(diǎn)擊微信右上角掃一掃功能,選擇支付二維碼完成支付。

【本文對(duì)您有幫助就好】

您的支持是博主寫(xiě)作最大的動(dòng)力,如果您喜歡我的文章,感覺(jué)我的文章對(duì)您有幫助,請(qǐng)用微信掃描上面二維碼支持博主2元、5元、10元、自定義金額等您想捐的金額吧,站長(zhǎng)會(huì)非常 感謝您的哦!!!

發(fā)表我的評(píng)論
最新評(píng)論 總共0條評(píng)論
主站蜘蛛池模板: 泾源县| 镇沅| 南昌市| 额济纳旗| 合江县| 湄潭县| 延津县| 吴江市| 上思县| 凉山| 鄂托克旗| 墨脱县| 平罗县| 龙海市| 扬中市| 赤水市| 兴化市| 朝阳区| 曲松县| 兴业县| 赤水市| 政和县| 深泽县| 江山市| 革吉县| 繁峙县| 灯塔市| 萨嘎县| 西林县| 沙田区| 大余县| 大田县| 中山市| 龙游县| 巢湖市| 株洲市| 大田县| 双柏县| 仙居县| 信宜市| 河东区|