MFC使用bitmap

原创 2011年03月02日 10:34:00

CBitmap m_bitmap;  //对象

 

m_bitmap.LoadBitmap(IDB_SPLASH);//加载

 

void CSplashWnd::OnPaint()
{
 CPaintDC dc(this);

 CDC dcImage;
 if (!dcImage.CreateCompatibleDC(&dc))//创建内存设备环境
  return;

 BITMAP bm;
 m_bitmap.GetBitmap(&bm);

 // Paint the image.
 CBitmap* pOldBitmap = dcImage.SelectObject(&m_bitmap);//这里把m_bitmap的位图选择到兼容DC dcImage,之后这个兼容DC就拥有和 m_bitmap同样大小的绘图区域 

dc.BitBlt(0, 0, bm.bmWidth, bm.bmHeight, &dcImage, 0, 0, SRCCOPY);//对指定的源设备环境区域中的像素进行位块(bit_block)转换,以传送到目标设备环境
 dcImage.SelectObject(pOldBitmap);
}

 

///////////////////////

Windows使用与设备无关的图形设备环境(DC :Device Context) 进行显示 。MFC基础类库定义了设备环境对象类----CDC类。

说到CDC类就不能不提一下GdiObject---图形对象类。 在Windows应用程序中,设备环境与图形对象共同工作,协同完成绘图显示工作。就像画家绘画一样,设备环境好比是画家的画布,图形对象好比是画家的画笔。用画笔在画布上绘画,不同的画笔将画出不同的画来。选择合适的图形对象和绘图对象,才能按照要求完成绘图任务。

相关文章推荐

mfc里bitmap 几种加载方式

1 //在对话框内显示位图   CBitmap hbmp;   HBITMAP hbitmap;   //装载图片文件MM.bmp   hbitmap=(HBITMAP)::LoadImage...

HBITMAP与BITMAP 的区别 BMP图像的格式

HBITMAP   是句柄;   BITMAP    是实例:     typedef   struct   tagBITMAP   {              LONG       b...

Delphi7高级应用开发随书源码

  • 2003年04月30日 00:00
  • 676KB
  • 下载

【VC++】(一):MFC在Picture control控件中显示Bitmap

今天在《VC++指纹模式识别系统及算法概述》一书中,看到有一段代码——在Picture Control中显示Bitmap。把它的代码和显示结果摘出来,作为今天的小小学习成果,鼓励一下自己。代码中所用的...
  • bcniber
  • bcniber
  • 2014年03月17日 22:03
  • 1868

MFC下画图

MFC下画图CBitmap,HBitmap,Bitmap区别及联系加载一位图,可以使用LoadImage:HANDLE LoadImage(HINSTANCE hinst,LPCTSTR lpszNa...

Bitmap、CBitmap、HBITMAP以及BITMAP的相互转换

构建CBitmap  CBitmap bmp; bmp.LoadBitmap(ID);   构建HBITMAP  HBitmap = (HBITMAP)LoadImage(NULL,L”C:\\...

一个Bitmap类

Download CBitmapEx source - 37.22 KB Download Effector source - 70.66 KB IntroductionThis article i...
  • naja_hu
  • naja_hu
  • 2010年02月06日 18:47
  • 1662

MFC的GDI对象的构造与释放

一、设备上行文 CDC对象封装了设备上下文的一个句柄m_hDC,如果通过GetDC();来操作设备上下文,一定要在退出函数时调用ReleaseDC(); GetDC();相当于获得了一个当前设备上下文...

【MFC】取得bitmap的大小

 CBitmap bitmap;bitmap.LoadBitmap(IDB_BITMAP3); //load resourceBITMAP bmp;bitmap.GetBitmap(&bmp);con...

MFC 获得Btimap的高度 GetBitmap() 输出bitmap

首先加载一张位图:可以使用2中方法,一种是利用CBitmap的LoadBitmap.还有一种是使用LoadImage. CBitmap bitmap; bitmap.LoadBitmap(IDB_...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:MFC使用bitmap
举报原因:
原因补充:

(最多只允许输入30个字)