教学文库网 - 权威文档分享云平台
您的当前位置:首页 > 精品文档 > 学前教育 >

VC++技术内幕(windows编程篇)(14)

来源:网络收集 时间:2026-07-12
导读: HGDIOBJ GetSafeHandle( ) const; //Return Value:A HANDLE to the attached Windows GDI object; otherwise NULL if no object is attached. 6,事例EX10B说明:位图有程序自己生成,并且能使位图在屏幕上平滑移

HGDIOBJ GetSafeHandle( ) const;

//Return Value:A HANDLE to the attached Windows GDI object; otherwise NULL if no object is attached.

6,事例EX10B说明:位图有程序自己生成,并且能使位图在屏幕上平滑移动。原理:首先将所选择的位图绘制在内存设备环境中,然后再将它反复快速地在屏幕上进行显示。

7,DIB编程(出于个人需要,这里做概要笔记,详见P190-204) 1)在MFC库中有GDI位图的类CBitmap,但没有DIB的类。 2)DIB包含一个二维数组,数组的元素为象素。

3)DIB是标准的Windows位图格式,且BMP文件包含一个DIB结构。 4)DIB访问函数:

SetDIBitsToDevice//直接在显示器或打印机上显示DIB,不进行缩放,位图每一位对应一显示象素或一打印点。

StretchDIBits//仿照StretchBlt类似的方式将DIB显示在显示器或打印机上。 GetDIBits//函数利用申请到的内存,由GDI位图来构造DIB。 CreateDIBitmap//由DIB来创建GDI位图。

CreateDIBSection//创建一种称为DIB项的DIB,然后返回一个GDI句柄。提供了DIB和GDI位图最好的特性。可以直接访问DIB的内存,还可以在DIB中调用GDI函数画图。

5)LoadImage//The LoadImage function loads an icon, cursor, or bitmap. LoadImage可以直接从一个磁盘文件中读入位图

6)DrawDibDraw//The DrawDibDraw function draws a DIB to the screen. DrawDibDraw需要MM_TEXT坐标和MM_TEXT映射模式。 8,在按钮上设置位图

1)先设置按钮的Owner Draw属性,然后在对话框类中写一个消息控制函数,在该按钮控制的窗口里画图。

2)使用MFC的CBitmapButton类实现在按钮在设置位图。步骤如下:

第一步:在对话框中添加按钮,并设置Owner Draw属性,大小并不重要。(框架自动调整为位图大小)

第二步:添加位图资源(.bmp),并用相应的按钮Caption+D/U来标识位图。即在位图的属性ID栏中输入\按钮Caption+U\或\按钮Caption+D\,其中名字两边的引号不能少,这样就表示了用名字标识资源而不是ID,U表示不翻转显示的位图,D表示翻转显示的位图。如:按钮Caption为[Button1],则在该按钮上贴位图的名字应为[\或[\。

第三步:为要设置位图的按钮,对应在按钮所在对话框类中添加CBitmapButton类型的数据成员。

第四步:映射按钮所在对话框类WM_INITDIALOG消息,在OnInitDialog函数中用刚添加的CBitmapButton类型的数据成员调用

VC++技术内幕(windows编程篇)(14).doc 将本文的Word文档下载到电脑,方便复制、编辑、收藏和打印
本文链接:https://www.jiaowen.net/wendang/592946.html(转载请注明文章来源)
Copyright © 2020-2025 教文网 版权所有
声明 :本网站尊重并保护知识产权,根据《信息网络传播权保护条例》,如果我们转载的作品侵犯了您的权利,请在一个月内通知我们,我们会及时删除。
客服QQ:78024566 邮箱:78024566@qq.com
苏ICP备19068818号-2
Top
× 游客快捷下载通道(下载后可以自由复制和排版)
VIP包月下载
特价:29 元/月 原价:99元
低至 0.3 元/份 每月下载150
全站内容免费自由复制
VIP包月下载
特价:29 元/月 原价:99元
低至 0.3 元/份 每月下载150
全站内容免费自由复制
注:下载文档有可能出现无法下载或内容有问题,请联系客服协助您处理。
× 常见问题(客服时间:周一到周五 9:30-18:00)