VC小技巧,窗体中显示bmp图象

王朝vc·作者佚名  2006-01-09
宽屏版  字体: |||超大  

虽然在高手看来这是垃圾问题,但对于我们这些菜鸟,这是很必须的.因为高手很不屑写这些的

我刚刚学会,为了挽救普天之下和我一样的菜鸟们,就写了这样一篇文章.

在vc中显示BMP并不象VB那么简单,用个loadpicture,什么格式全部ok,在vc中又需要做一些额外工作.

我们用 SDI作示范.

新建一个SDI的工程,所有都是默认.打开资源编辑器,右键,import 选择图片导入.使用默认的ID

不要尝试去编辑他,因为他的颜色超过了256.在OnDraw函数中添加如下代码:

CDC memDC;//内存设备场景

CBitmap cb;//位图类对象

CRect rect;

GetWindowRect(&rect);

cb.LoadBitmap (IDB_BITMAP1);//载入资源

memDC.CreateCompatibleDC (pDC);//创建内存设备上下文

CBitmap *oldbitmap=NULL;

oldbitmap=memDC.SelectObject (&cb);//将位图选入当前设备场景

pDC->BitBlt (0,0,rect.Width (),rect.Height (),&memDC,0,0,SRCCOPY);//将内存场景的图象拷贝到屏幕上

memDC.SelectObject (oldbitmap);

这样就完成了, 其实不难理解,同一般的GDI作图是一样的原理.

加上注释,广大菜鸟应该能懂.

 
 
 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
© 2005- 王朝网络 版权所有