一、显示资源里的位图
①载入图片:loadbitmap
②创建设备上下文:CreateCompatibleDC
③替换设备环境位图:SelectObject
④复制位图:bitblt
⑤释放对象
⑥释放设备上下文
示例代码:
{ // TODO: 在此添加控件通知处理程序代码
CBitmap mybitmap;
mybitmap.LoadBitmap(IDB_BITMAP3); //载入资源里的位图
CDC *pdc=GetDC();
CDC bmp;
bmp.CreateCompatibleDC(pdc); //创建一个兼容pdc的设备上下文
bmp.SelectObject(&mybitmap); //替换设备环境位图
pdc->BitBlt(0,0,30,50,&bmp,0,0,SRCCOPY); //复制位图至pdc 也就是主窗口
mybitmap.DeleteObject();//释放掉对象
ReleaseDC(pdc); //释放掉设备上下文
ReleaseDC(&pbmp); //释放掉设备上下文
}
二、从文件载入位图
将上述的mybitmap.LoadBitmap(IDB_BITMAP3); //载入资源里的位图改为:
WCHAR strPath[]=L"D:\\1.bmp";
HBITMAP bitmap = (HBITMAP)::LoadImage(NULL,strPath, IMAGE_BITMAP, 0, 0, LR_LOADFROMFILE|LR_DEFAULTSIZE);
mybitmap.Attach(bitmap);//Attach是CGdiObject成员用来附加到一个GDI对象设备
三、位图画刷
即用位图来填充区域
mybrush.CreatePatternBrush(&mybitmap); //创建画刷,用位图初始化