使用picture控件动态显示图片方法

使用picture控件动态显示图片方法

ID:8814495

大小:43.50 KB

页数:5页

时间:2018-04-08

使用picture控件动态显示图片方法_第1页
使用picture控件动态显示图片方法_第2页
使用picture控件动态显示图片方法_第3页
使用picture控件动态显示图片方法_第4页
使用picture控件动态显示图片方法_第5页
资源描述:

《使用picture控件动态显示图片方法》由会员上传分享,免费在线阅读,更多相关内容在应用文档-天天文库

1、使用picture控件动态显示图片方法一控件适应于图片尺寸添加一个picture控件,修改ID为IDC-PICTURE,并添加一CBitmapm_bmp成员变量在OnInitDialog()函数中添加如下代码if(m_bmp.m_hObject!=NULL)m_bmp.DeleteObject();//以绝对路径加载BMP图片HBITMAPhbmp=(HBITMAP)::LoadImage(AfxGetInstanceHandle(),"1.bmp",IMAGE_BITMAP,0,0,LR_CREATEDIBSECTION

2、LR_LO

3、ADFROMFILE);if(hbmp==NULL)returnfalse;//获得加载位图的文件信息m_bmp.Attach(hbmp);DIBSECTIONds;BITMAPINFOHEADER&bminfo=ds.dsBmih;//获得位图信息图m_bmp.GetObject(sizeof(ds),&ds);intcx=bminfo.biWidth;//获得位图宽度intcy=bminfo.biHeight;//获得位图高度//该段程序根据图象的宽和高,调整控件大小,让它正好显示一张图片CRectrect;GetDlgItem(

4、IDC_PICTRUE)->GetWindowRect(&rect);//获得控件所在矩形区域ScreenToClient(&rect);GetDlgItem(IDC_PICTRUE)->MoveWindow(rect.left,rect.top,cx,cy,true);//调整控件大小在OnPaint()函数中添加如下代码//三种方法获得pictrue控件DC,图象将被绘制在控件上CPaintDCdc(GetDlgItem(IDC_PICTRUE));//CPaintDCdc(this);//CDCdc;//dc.m_hDC=::G

5、etDC(NULL);CRectrcclient;GetDlgItem(IDC_PICTRUE)->GetClientRect(&rcclient);CDCmemdc;memdc.CreateCompatibleDC(&dc);CBitmapbitmap;bitmap.CreateCompatibleBitmap(&dc,rcclient.Width(),rcclient.Height());memdc.SelectObject(&bitmap);CWnd::DefWindowProc(WM_PAINT,(WPARAM)memdc.m

6、_hDC,0);CDCmaskdc;maskdc.CreateCompatibleDC(&dc);CBitmapmaskbitmap;maskbitmap.CreateBitmap(rcclient.Width(),rcclient.Height(),1,1,NULL);maskdc.SelectObject(&maskbitmap);maskdc.BitBlt(0,0,rcclient.Width(),rcclient.Height(),&memdc,rcclient.left,rcclient.top,SRCCOPY);CBrus

7、hbrush;brush.CreatePatternBrush(&m_bmp);dc.FillRect(rcclient,&brush);dc.BitBlt(rcclient.left,rcclient.top,rcclient.Width(),rcclient.Height(),&memdc,rcclient.left,rcclient.top,SRCPAINT);brush.DeleteObject();二图片适用于控件尺寸添加一个picture控件,修改ID为IDC-PICTURE在OnPaint()函数中添加如下代码CWnd*

8、pWnd=GetDlgItem(IDC_PICTRUE);//获得pictrue控件窗口的句柄CRectrect;pWnd->GetClientRect(&rect);//获得pictrue控件所在的举行区域CDC*pDC=pWnd->GetDC();//获得pictrue控件的DCIStream*pStm;CFileStatusfstatus;CFilefile;LONGcb;IPicture*pPic;//定义显示图片的接口(可显示jpg格式图片)CStringm_sPath="1.BMP";//设置想要显示的图片//打开图象文件

9、,获取文件字节数if(file.Open(m_sPath,CFile::modeRead)&&file.GetStatus(m_sPath,fstatus)&&((cb=fstatus.m_size)!=-1)){//分

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。