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

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

ID:11397252

大小:43.50 KB

页数:5页

时间:2018-07-11

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

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

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_LOADFROMFILE);if(hbmp==NULL)ret

3、urnfalse;//获得加载位图的文件信息m_bmp.Attach(hbmp);DIBSECTIONds;BITMAPINFOHEADER&bminfo=ds.dsBmih;//获得位图信息图m_bmp.GetObject(sizeof(ds),&ds);intcx=bminfo.biWidth;//获得位图宽度intcy=bminfo.biHeight;//获得位图高度//该段程序根据图象的宽和高,调整控件大小,让它正好显示一张图片CRectrect;GetDlgItem(IDC_PICTRUE)->GetWindowRect(&rect);//获得控件所在矩形区域ScreenToCli

4、ent(&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=::GetDC(NULL);CRectrcclient;GetDlgItem(IDC_PICTRUE)->GetClientRect(&rcclient);CDCmemdc;mem

5、dc.CreateCompatibleDC(&dc);CBitmapbitmap;bitmap.CreateCompatibleBitmap(&dc,rcclient.Width(),rcclient.Height());memdc.SelectObject(&bitmap);CWnd::DefWindowProc(WM_PAINT,(WPARAM)memdc.m_hDC,0);CDCmaskdc;maskdc.CreateCompatibleDC(&dc);CBitmapmaskbitmap;maskbitmap.CreateBitmap(rcclient.Width(),rcclient

6、.Height(),1,1,NULL);maskdc.SelectObject(&maskbitmap);maskdc.BitBlt(0,0,rcclient.Width(),rcclient.Height(),&memdc,rcclient.left,rcclient.top,SRCCOPY);CBrushbrush;brush.CreatePatternBrush(&m_bmp);dc.FillRect(rcclient,&brush);dc.BitBlt(rcclient.left,rcclient.top,rcclient.Width(),rcclient.Height(),&mem

7、dc,rcclient.left,rcclient.top,SRCPAINT);brush.DeleteObject();二图片适用于控件尺寸添加一个picture控件,修改ID为IDC-PICTURE在OnPaint()函数中添加如下代码CWnd*pWnd=GetDlgItem(IDC_PICTRUE);//获得pictrue控件窗口的句柄CRectrect;pWnd->GetClientRect(&rect);//获得pictrue控件所在的举行区域CDC*pDC=pWnd->GetDC();//获得pictrue控件的DCIStream*pStm;CFileStatusfstatus;

8、CFilefile;LONGcb;IPicture*pPic;//定义显示图片的接口(可显示jpg格式图片)CStringm_sPath="1.BMP";//设置想要显示的图片//打开图象文件,获取文件字节数if(file.Open(m_sPath,CFile::modeRead)&&file.GetStatus(m_sPath,fstatus)&&((cb=fstatus.m_size)!=-1)){//分

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

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

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