• 设备描述表


    1.获取设备描述表句柄:
    a. hdc = BeginPaint(hwnd,&ps);
       //other program lines
       EndPaint(hwnd,&ps);
       BeginPaint调用使整个客户区有效(阻止WM_PAINT消息一直发送),填充
       ps结构的字段,返回的设备描述句柄。使用这个句柄只能在ps结构中的rcPaint字段规定的区域
       内绘图。EndPaint调用可释放设备描述句柄。这两个函数常成对出现,并且一般只用在WM_PAINT
       消息中。
    b. hdc = GetDC(hwnd);
       //other progream lines
       ReleaseDC(hwnd,hdc);
       GetDC函数调用后会返回hwnd参数所指定的窗口的客户区所对应的设备描述表句柄。可见GetDC调用
       与BeginPaint的基本区别是,利用从GetDC返回的句柄可以在整个客户区上绘图。如果hwnd参数设置
       为NULL,那么函数会返回整个桌面的设备描述表句柄。当不再需要该设备环境时,需要调用ReleaseDC
       函数释放设备描述表。
    c. hdc = GetWindowDC(hwnd);
       //other progream lines
       DeleteDC(hdc);
       GetWindowDC返回可以在整个窗口(包括客户区部分和标题栏、菜单、滚动条、框架等非客户区部分)
       绘图的设备描述表句柄,不过此函数很少使用。
    d. hdc = CreateDC(lpszDriver,lpszDevice,lpszOutput,lpData);
       //other progream lines
       DeleteDC(hdc);
       BeginPaint、GetDC和GetWindowDC获得的设备内容都与显示器上的某个特定窗口(即hwnd)相关。
       CreateDC是取得设备描述表句柄一个更通用的函数,它甚至可以获取非显示器输出设备描述表句柄。
       当不再需要该设备描述表时只可调用DeleteDC函数删除它。

    2.保存设备描述表:

     int idSaved = SaveDC(hdc) ;//保存

     RestoreDC (hdc, idSaved) ;//恢复

     RestoreDC(hdc,-1);//表示恢复最近保存的一次

  • 相关阅读:
    自然语言处理1-1 算法时间复杂度
    tensorflow2.0(1):简介
    基于PKCS#11的应用架构
    数字证书应用改造需求调研-2015-10-19
    签名验证工具Aloaha Sign
    PDF签名应用研究小结
    用bcp导sql server数据到excel文件
    无线网卡和有线网卡的嗅探模式的区别
    Tomcat6源代码在Eclipse里调试简要说明
    OpenLDAP 主从复制配置
  • 原文地址:https://www.cnblogs.com/xy95/p/5741834.html
Copyright © 2020-2023  润新知