• 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。

    说明:

       每次调用GetWindowDCGetDC函数检索公用设备上下文环境之后,应用程序必须调用ReleaseDC函数来释放设备上下文环境。

       应用程序不能调用ReleaseDC函数来释放由CreateDC、CreateCopatibleDC 函数创建的设备上下文环境,只能使用DeleteDC函数。

    DeleteObject

    该函数删除一个逻辑笔、画笔、字体、位图、区域或者调色板,释放所有与该对象有关的系统资源,在对象被删除之后,指定的句柄也就失效了。

    原型:

    BOOL DeleteObject(HGDIOBJ hObject);

    参数:

    hObject:逻辑笔、画笔、字体、位图、区域或者调色板的句柄。

    返回值

       成功,返回非零值;如果指定的句柄无效或者它已被选入设备上下文环境,则返回值为零。调用GetLastError获取扩展错误信息。

    说明:

       当一个绘画对象(如笔或画笔)当前被选入一个设备上下文环境时不要删除该对象。当一个调色板画笔被删除时,与该画笔相关的位图并不被删除,该图必须单独地删除。

  • 相关阅读:
    Java初学者笔记四:按行读写文件和输入处理
    Java初学者笔记三:关于字符串和自实现数组常见操作以及异常处理
    Java初学者笔记二:关于类的常见知识点汇总
    python的类继承与派生
    Java初学者笔记一:元类、获取类型、枚举
    Tomcat远程任意代码执行漏洞及其POC(CVE-2017-12617)
    PostgreSQL远程代码执行漏洞(CVE-2018-1058)学习笔记
    python的三个函数(eval、exec、complie)和python版RMI
    关于Memcached反射型DRDoS攻击分析
    python的其他安全隐患
  • 原文地址:https://www.cnblogs.com/zhaoxinshanwei/p/4051435.html
Copyright © 2020-2023  润新知