MFC绘图7--显示位图

2016-02-19 17:42 4 1 收藏

今天图老师小编要跟大家分享MFC绘图7--显示位图,精心挑选的过程简单易学,喜欢的朋友一起来学习吧!

【 tulaoshi.com - 编程语言 】

  1、将位图加载到内存DC中

  2、将内存DC中的内容绘制到要显示位图的DC中

  *MFC中没有直接用来加载位图的函数,可以使用WindowsAPI中的

  LoadImage函数来加载位图,其原型如下:

  

HANDLE LoadImage(
HINSTANCE hinst, //位图实体句柄,若位图在硬盘或者资源文件
//中,则将该参数设为NULL
LPCTSTR lpszName, //位图所在路径及文件名,或者资源名称
UINT uType, //加载位图的类型:
//1、IMAGE_BITMAP
//2、IMAGE_CURSOR
//3、IMAGE_ICON
int cxDesired, //位图宽度,像素
int cyDesired, //位图高度,像素
UINT fuLoad //加载方式比如LR_LOADFROMFILE等
);

  步骤:

  CClientDC dc(this);

  CDC *mdc=new CDC;

  //CDC只有空构造函数,也就是说无法通过拷贝函数来构造一个

  //与dc相同的mdc,即mdc=dc非法。

  //CreateCompatibleDC建立一个适合指定pDC的内存设备上下文

  mdc-CreateCompatibleDC(&dc);

  CBitmap bitmap;

  //CBitmap继承自CGdiObject

  //其成员变量m_hObject是一个句柄

  //A HANDLE containing the HBITMAP, HPALETTE, HRGN, HBRUSH, HPEN, or HFONT

(本文来源于图老师网站,更多请访问https://www.tulaoshi.com/bianchengyuyan/)

  //attached to this object.

  //可以简单记为bitmap拥有HBITMAP类型句柄m_hObject,而该句柄需要使用

  //Windows API的LoadImage获得

  bitmap.m_hObject=(HBITMAP)::LoadImage(NULL,"b1.bmp",IMAGE_BITMAP,500,400,LR_LOADFROMFILE);

  mdc-SelectObject(bitmap);

  CRect rect;

  //取得客户区域大小

  GetClientRect(&rect);

  //BitBlt()将位图贴到要显示的DC

  dc.BitBlt(0,0,rect.right,rect.bottom,mdc,0,0,SRCCOPY);

(本文来源于图老师网站,更多请访问https://www.tulaoshi.com/bianchengyuyan/)

  //最后要记得在析构函数中释放mdc

  delete mdc

来源:https://www.tulaoshi.com/n/20160219/1615855.html

延伸阅读
位图进度条 作者:徐云飞 下载本文示例源代码 图一 例子效果 玩过破天的朋友知道,游戏更新时进度是用位图表示的,我觉的挺漂亮的,于是自己动手做了一个类来实现那种效果。 这个类的名字叫CBmpProgCtrl,继承于CStatic,使用方法如下。 1、首...
标签: 人体穴位图解
拥有修长的小腿真是一道美丽的风景,可以提升整体的气质。那么怎样可以瘦小腿?其实对于一般脂肪过多的小腿采用运动瘦小腿的效果要好一些的,我们来具体看下运动瘦小腿的方法吧。 1、踩站立姿势,双手自然下垂,双脚打开与肩膀同宽。 2、双脚同时慢慢抬起脚跟,以脚尖站立,然后慢慢放下脚跟 3、可重复做10次 功效:可以...
tulaoShi.com 腹部穴位图   腹部穴位图 腹部穴位图 腹部穴位图 腹部穴位图 腹部穴位图   右手手部穴位图 右手手部穴位图 右手手部穴位图Tulaoshi.Com 右手手部穴位图     左手手部穴位图   左手手部穴位图 左...
标签: flash教程
第二章 绘图基础 第一节 基本绘图工具(上7)      (2)颜料填充 选择【颜料填充】模式,它只影响了填色的内容,不会遮盖住线条,效果如图2-1-31所示。 图2-1-31 颜料填充模式   (3)后面绘画 选择【后面绘画】模式,无论你怎么画,它都在图像的后方,不会影响前景图像,如图2-1-32所示。   图...
一、 MFC类库与DirectXSDK Microsoft DirectX SDK是开发基于 Windows平台游戏的一个软件开发工具,其主要功能主要包括在五个组件中: DirectDraw、 DirectSound、DirectPlay、Direct3D和DirectInput,每个组件都具不同的功能: .DirectDraw使用直接写存技术加快游戏的动画速度;.DirecSound控制游戏声音的合成和播放;.DirectPl...

经验教程

260

收藏

40
微博分享 QQ分享 QQ空间 手机页面 收藏网站 回到头部