DeleteDC ReleaseDC DeleteObject之间的区别
DeleteDC
该函数删除指定的设备上下文环境(DC)。
原型:
BOOL DeleteDC(HDC hdc);
参数:
hdc:设备上下文环境的句柄。
返回值:
成功,返回非零值;失败,返回零。调用GetLastError获取扩展错误信息。
说明:
如果一个设备上下文环境的句柄是通过调用GetDC函数得到的,那么应用程序不能删除该设备上下文环境,它应该调用ReleaseDC函数来释放该设备上下文环境。
ReleaseDC
函数释放设备上下文环境(DC)供其他应用程序使用。函数的效果与设备上下文环境类型有关。
原型:
int ReleaseDC(HWND hWnd, HDC hdc);
参数:
hWnd:指向要释放的设备上下文环境所在的窗口的句柄。
hDC:指向要释放的设备上下文环境的句柄。
返回值:
返回值说明了设备上下文环境是否释放;如果释放成功,则返回值为1;如果没有释放成功,则返回值为0。
说明:
每次调用GetWindowDC和GetDC函数检索公用设备上下文环境之后,应用程序必须调用ReleaseDC函数来释放设备上下文环境。
应用程序不能调用ReleaseDC函数来释放由CreateDC、CreateCopatibleDC 函数创建的设备上下文环境,只能使用DeleteDC函数。
DeleteObject
该函数删除一个逻辑笔、画笔、字体、位图、区域或者调色板,释放所有与该对象有关的系统资源,在对象被删除之后,指定的句柄也就失效了。
原型:
BOOL DeleteObject(HGDIOBJ hObject);
参数:
hObject:逻辑笔、画笔、字体、位图、区域或者调色板的句柄。
返回值:
成功,返回非零值;如果指定的句柄无效或者它已被选入设备上下文环境,则返回值为零。调用GetLastError获取扩展错误信息。
说明:
当一个绘画对象(如笔或画笔)当前被选入一个设备上下文环境时不要删除该对象。当一个调色板画笔被删除时,与该画笔相关的位图并不被删除,该图必须单独地删除。
最新文章
- Windows Server2008 下用于.NET Framework3.0版本的问题无法在IIS7中配置.NET Framework4.0节点的问题
- TesseractOCR
- httpclient 使用方式介绍
- HDU 5234 DP背包
- [Spring MVC] - Interceptor 拦截器
- c_str()
- C#中数组、ArrayList和List三者的区别(转)
- 理解Javascript的动态语言特性
- 设计模式——适配器模式(C++实现)
- Android实训案例(二)——Android下的CMD命令之关机重启以及重启recovery
- EIGRP 高级实验
- mysql-数据(记录)相关操作(增删改查)及权限管理
- koa generator
- springboot @Value 获取计算机中绝对路径文件的内容
- Spark_RDD之RDD基础
- 配置 influxDB 鉴权及 HTTP API 写数据的方法
- Evolution(矩阵快速幂)zoj2853
- opensuse编译安装Python3后缺少zlib
- HDU - 4118 Holiday&;#39;s Accommodation
- Springboot读取自定义配置文件的几种方法
热门文章
- restlet验证
- linux日志系统介绍 —— syslog(),openlog(),closelog()
- Pentaho BIServer Community Edtion 6.1 使用教程 第二篇 迁移元数据 [HSQLDB TO MySQL]
- 使用 eslint 和 editorconfig 规范代码
- hihocoder(第十周)二叉树(前序中序推后续)递推实现
- CentOS 7 设置自定义开机启动,添加自定义系统服务
- gVim/Vim 一键编译、连接、运行 C/C++ 单文件
- python学习笔记:第八天(模块)
- Facebook的实时流处理技术——Scuba是Facebook的一个非常快速、分布式的内存数据库,用于实时分析和查询
- Eclipse_插件_03_反编译插件_Eclipse Class Decompiler