MFC #位图#

来源:互联网 发布:阿里云 微信公众号 编辑:程序博客网 时间:2024/05/22 03:11

加载位图

HANDLE LoadImage(  
HINSTANCE hinst,     // 包含位图实体handle
LPCTSTR lpszName,     // 位图的来源
UINT uType,     // 加载位图的类型  
int cxDesired,     // 位图的宽度
int cyDesired,     // 位图的高度 
UINT fuLoad     // 加载位图的方式
);

利用LoadImage函数加载位图,并存入内存DC中。

CreateCompatibleDC(CDC* pDC )

CDC类的成员函数,用于创建一个和pDC指向的DC兼容的内存DC,这样可以将内存DC上的位图内容贴到pDC指向的DC上。

CreateDiscardableBITmap( CDC* pDC, int nWidth, int nHeight)

CBitmap类的成员函数,用于按指定尺寸创建一个和pDC指向的DC兼容的位图。 

SelectObject(CBitmap * pBitmap)

CDC类的成员函数,执行以后,所以在该DC上的图像输出都将被画到pBitmap指向的位图上。

绘制位图

在成功地将位图加载到内存DC中之后,只要把内存DC中的内容贴到要显示位图的DC中就行了,利用CDC::BitBlt函数就可以完成。

BOOL BitBlt( 
int x,     //贴到目的地左上角点的X坐标
int y,     //贴到目的地左上角点的Y坐标
int nWidth,     //贴到目的地的宽度
int nHeight,     //贴到目的地的高度
CDC* pSrcDC,      //储存来源位图的DC
int xSrc,     //源位图的左上角点的X坐标
int ySrc,     //源位图的左上角点的X坐标
DWORD dwRop     //Raster运算值
);

BitBit函数可以吧内存DC中的位图贴到其他DC中。


原创粉丝点击