视频1 视频21 视频41 视频61 视频文章1 视频文章21 视频文章41 视频文章61 推荐1 推荐3 推荐5 推荐7 推荐9 推荐11 推荐13 推荐15 推荐17 推荐19 推荐21 推荐23 推荐25 推荐27 推荐29 推荐31 推荐33 推荐35 推荐37 推荐39 推荐41 推荐43 推荐45 推荐47 推荐49 关键词1 关键词101 关键词201 关键词301 关键词401 关键词501 关键词601 关键词701 关键词801 关键词901 关键词1001 关键词1101 关键词1201 关键词1301 关键词1401 关键词1501 关键词1601 关键词1701 关键词1801 关键词1901 视频扩展1 视频扩展6 视频扩展11 视频扩展16 文章1 文章201 文章401 文章601 文章801 文章1001 资讯1 资讯501 资讯1001 资讯1501 标签1 标签501 标签1001 关键词1 关键词501 关键词1001 关键词1501 专题2001
VC中图像控件的用法与总结
2025-09-29 00:26:41 责编:小OO
文档
使用picture控件动态显示图片方法

一 控件适应于图片尺寸

添加一个picture控件,修改ID为IDC-PICTURE,并添加一CBitmap m_bmp成员变量

在OnInitDialog()函数中添加如下代码

if(m_bmp.m_hObject!=NULL) m_bmp.DeleteObject();

 //以绝对路径加载BMP图片

 

 //获得加载位图的文件信息

 //获得位图信息图

 //获得位图宽度

 //获得位图高度

 //该段程序根据图象的宽和高,调整控件大小,让它正好显示一张图片

 //获得控件所在矩形区域

 //调整控件大小

在OnPaint()函数中添加如下代码

//三种方法获得pictrue控件DC,图象将被绘制在控件上

 

二 图片适用于控件尺寸 

添加一个picture控件,修改ID为IDC-PICTURE

在OnPaint()函数中添加如下代码

CWnd *pWnd=GetDlgItem(IDC_PICTRUE);//获得pictrue控件窗口的句柄

 //获得pictrue控件所在的举行区域

 //获得pictrue控件的DC

 //定义显示图片的接口(可显示jpg格式图片)

 //设置想要显示的图片

 //打开图象文件,获取文件字节数

 

 //分配全局存储空间

 //锁定分配内存块

 //读入文件到内存缓冲区

 //装载图象文件

 //获得图象真实宽度

 //获得图象真实高度

 //在控件上显示图片

图片显示通用模块

首先为类添加如下两个函数和一个成员变量IPicture* m_pPicture;

//图片加载函数

HRESULT  LoadFromBuffer(BYTE *pBuff, int nSize)

{

 //分配内存空间

 //定义图象数据指针

 //释放内存空间

 //定义数据流指针

 //创建数据流

  //定义返回结果

 

  

  //释放数据流

 

}

//图片显示函数

BOOL  DrawFromFile(CString filename, CDC *pDC)

{

 //打开文件

  //定义分配内存

  //将文件读入缓存

  

  //释放缓存

 

 

 

  //获取图片尺寸

 

 

  //在内存中画

 

 

 

 

 

 

  //将内存中画拷贝到目的地

 

 

}

然后在OnPaint()函数中显示

void CDialogDlg::OnPaint() 

{

 

 

 

 

 

 

 

 

 

 

 

 

 

 

}下载本文

显示全文
专题