BitBlt原型
BOOL BitBlt(
HDC hdcDest, 指向目标设备环境的句柄。
int nXDest, 指定目标矩形区域左上角的X轴逻辑坐标。
int nYDest, 指定目标矩形区域左上角的Y轴逻辑坐标。
int nWidth, 指定源和目标矩形区域的逻辑宽度。
int nHeight, 指定源和目标矩形区域的逻辑高度。
HDC hdcSrc, 指向源设备环境的句柄
int nXSrc, 指定源矩形区域左上角的X轴逻辑坐标
int nYSrc, 指定源矩形区域左上角的Y轴逻辑坐标
DWORD dwRop 指定光栅操作代码
);
void CShowPictureView::OnPaint()
{
CPaintDC dc(this); // 用于绘制的设备上下文
// TODO: 在此处添加消息处理程序代码
// 不要为绘制消息而调用 CWnd::OnPaint()
CBitmap cbmp;
cbmp.LoadBitmap(IDB_BITMAP1);
BITMAP bitmap;
cbmp.GetBitmap(&bitmap);
CDC dcMemory;
dcMemory.CreateCompatibleDC(&dc);
CBitmap *hOldBitmap=dcMemory.SelectObject(&cbmp);
dc.BitBlt(100,100,bitmap.bmWidth,bitmap.bmHeight,&dcMemory,0,0,SRCCOPY);
cbmp.DeleteObject();
dcMemory.SelectObject(hOldBitmap);
dcMemory.DeleteDC();
}
应用举例:制作进度条,配合OnTimer事件