如何在用户区显示一张位图
2011-10-19 09:36
435 查看
显示一张位图,基本的有以下三种形式: 一、位图资源的显示(设资源ID为IDB——BITMAP1程序如下) [code]{ CBitmap bitmap; CBitmap* pOldBitmap; CDC MemDC; MemDC.CreateCompatibleDC(&dc); ///建立与显示设备兼容的内存设备场境 bitmap.LoadBitmap(IDB_BITMAP1); ///取出位图资源 pOldBitmap=MemDC.SelectObject(&bitmap); ///将位图选入内存场境 dc.BitBlt(50,50,48,48,&MemDC,0,0,SRCCOPY); ///显示它 MemDC.SelectObject(pOldBitmap); }
[/code]
二、创建位图,然后在里面画上图形,再显示它 [code]{ CBitmap bitmap; CBitmap* pOldBitmap; CDC MemDC; int i; CPen pen; CPen* oldpen; MemDC.CreateCompatibleDC(&dc); ///建立与显示设备兼容的内存设备场境 bitmap.CreateCompatibleBitmap(&dc,100,100);///建立与显示设备兼容的位图 pOldBitmap=MemDC.SelectObject(&bitmap); ///将位图选入内存场境 for(i=0;i<100;i++) { ///画100根线 pen.CreatePen(PS_SOLID,1, RGB(0,0,i*2+55)); oldpen=MemDC.SelectObject(&pen); MemDC.MoveTo(0,i); MemDC.LineTo(100,i); MemDC.SelectObject(oldpen); pen.DeleteObject(); } dc.BitBlt(50,50,100,100,&MemDC,0,0,SRCCOPY); ///显示它 MemDC.SelectObject(pOldBitmap); }
[/code]
三、显示磁盘上的外部BMP文件 [code]{ HBITMAP bitmap; /////读取位图文件SAMPLE.BMP bitmap=(HBITMAP)LoadImage(AfxGetInstanceHandle(),"SAMPLE.BMP",IMAGE_BITMAP,0,0,LR_LOADFROMFILE|LR_CREATEDIBSECTION); ASSERT(bitmap); HBITMAP OldBitmap; CDC MemDC;CRect rect; MemDC.CreateCompatibleDC(&dc); GetClientRect(rect); OldBitmap=(HBITMAP)MemDC.SelectObject(bitmap); ///显示它 dc.BitBlt(20,20,rect.Width()-20,rect.Height()-20,&MemDC,0,0,SRCCOPY); MemDC.SelectObject(OldBitmap); }
[/code]
相关文章推荐
- 如何在用户区显示一张位图
- 如何在用户区显示一张位图
- 如何在用户区显示一张位图
- 如何在用户区显示一张位图
- 如何在用户区显示一张图片
- VC中如何显示一张位图
- 如何将SAP的SCREEN显示到其他用户机器上,接受其他用户控制
- Android如何从图库获取一张图片并显示
- ASP.NET - 如何:显示当前用户的名称
- App里面如何正确显示用户头像
- (DB ,sqlserver2005,tips)如何获取用户自定义的触发器的内容(在sqlserver2005树形菜单没有显示)
- 如何将位图缩放显示在Static控件中
- 连载 1 - 深入讨论 Android 关于高效显示图片的问题 - 如何高效的加载大位图
- 当用户点击Command Link后如何显示确认对话框?
- 融云--如何显示用户昵称和头像的
- 如何实现文字加透明背景显示在一张图片的底部的效果
- BCB中的TComboBox如何显示用户选择名称所对应的映射值?------尝试好久终于想到利用定时器来间接实现
- 如何提高网页中图片显示的用户体验(附源码下载)
- 如何让用户看不到错误页面或者显示指定页面
- VC 常见问题百问~确定应用程序的路径~~如何在对话框中显示一个位图?~~窗口重绘