背景位圖
BOOL CChineseChessView::OnEraseBkgnd(CDC* pDC)
{
?return TRUE;
?
?CRect rectbk;// 客戶區的大小
?CDC dcMen; // 內存設備描述表
?CBitmap bmbk;
?bmbk.LoadBitmap(IDB_BITMAP1);
?// 得到位圖bitmap的大小
?BITMAP stBitmap;
?bmbk.GetObject(sizeof(BITMAP),&stBitmap);
?CSize bmsize(stBitmap.bmWidth,stBitmap.bmHeight);
?dcMen.CreateCompatibleDC(pDC); // 創建兼容的設備描述表
?// 選入新的位圖對象并保存舊的位圖對象
?CBitmap *pold=dcMen.SelectObject(&bmbk);
?GetClientRect(&rectbk);
?// 取得客戶區的大小
?// 從內存向屏幕復制位圖對象
?
?pDC->StretchBlt(rectbk.left,rectbk.top,rectbk.Width(),
??rectbk.Height(),&dcMen,0,0,bmsize.cx,bmsize.cy,SRCCOPY);
?dcMen.SelectObject(pold);
?// 恢復舊的位圖對象
?dcMen.DeleteDC();
?// 釋放內存設備描述表
?return true;
}
posted on 2006-10-03 10:44 weidagang2046 閱讀(300) 評論(0) 編輯 收藏 所屬分類: Windows