函数功能:该函数创建一个与指定设备兼容的内存设备上下文环境(DC)。

函数原型:HDC CreateCompatibleDC(HDC hdc);

参数:

hdc:现有设备上下文环境的句柄,如果该句柄为NULL,该函数创建一个与应用程序的当前显示器兼容的内存设备上下文环境。

返回值:如果成功,则返回内存设备上下文环境的句柄;如果失败,则返回值为NULL。

Windows NT:若想获得更多错误信息,请调用GetLastError函数。

注释:内存设备上下文环境是仅在内存中存在的设备上下文环境,当内存设备上下文环境被创建时,它的显示界面是标准的一个单色像素宽和一个单色像素高,在一个应用程序可以使用内存设备上下文环境进行绘图操作之前,它必须选择一个高和宽都正确的位图到设备上下文环境中,这可以通过使用CreateCompatibleBitmap函数指定高、宽和色彩组合以满足函数调用的需要。

当一个内存设备上下文环境创建时,所有的特性都设为缺省值,内存设备上下文环境作为一个普通的设备上下文环境使用,当然也可以设置这些特性为非缺省值,得到它的特性的当前设置,为它选择画笔,刷子和区域。

CreateCompatibleDc函数只适用于支持光栅操作的设备,应用程序可以通过调用GetDeviceCaps函数来确定一个设备是否支持这些操作。

当不再需要内存设备上下文环境时,可调用DeleteDc函数删除它。

ICM:如果通过该函数的hdc参数传送给该函数设备上下文环境(Dc)对于独立颜色管理(ICM)是能用的,则该函数创建的设备上下文环境(Dc)是ICM能用的,资源和目标颜色间隔是在Dc中定义。

文章出处:http://www.diybl.com/course/3_program/c++/cppjs/2008827/137761.html

CreateCompatibleDC(HDC hdc);相关推荐

  1. CreateDC与CreateCompatibleDC建立的HDC有何不同?

    文章来自:http://www.programmer-club.com.tw/ShowSameTitleN/vc/14701.html HDC hdcDisp = CreateDC("DIS ...

  2. 详解DC、CDC、HDC、句柄、设备上下文

    最近那么长时间都没写博文.感觉经常写博文是好事.工作的时候项目是用MFC做的.百度了下说这个框架已经过时了.但是工作需要又不得不看,所以现在就之前看的一篇关于设备上下文的文章转载下 MFC中的DC.C ...

  3. HDC、CDC、CCLientDC的关系、MFC类库

    DC概念: 当使用GDI函数比如MoveToEx.LineTo.TextOut时,只是告诉系统要画线或者写字了,但是用什么样的笔(HPEN),字是什么颜色(setTextColor),画在哪张'纸'( ...

  4. MFC中的DC,CDC和HDC

    设备描述表(DC)是Windows中的一种数据结构,它包含GDI需要的所有关于显示界面情况的描述字段,包括相连的物理设备和各种各样的状态信息. 图形显示功能是由显卡来完成的,你想要利用显卡的图形显示功 ...

  5. HDC,CDC,CClientDC,CPaintDC,CWindowDC的区别

    CDC是MFC的DC的一个类 HDC是DC的句柄,API中的一个类似指针的数据类型. MFC类的前缀都是C开头的 H开头的大多数是句柄 首先说一下什么是DC(设备描述表) 解:Windows应用程序通 ...

  6. 【转】Windows编程之hdc和hwnd的区别

    在windows编程中类型名前面加H的基本是句柄 常用句柄 : HBITMAP 保存位图信息的内存域的句柄 HBRUSH 画刷句柄 HCTR 子窗口控件句柄 HCURSOR 鼠标光标句柄 HDC 设备 ...

  7. MFC中CDC *PDC hDC 等等及Wnd的区别

    HDC是WINDOWS的一种数据类型,是设备描述句柄. CDC是MFC里的一个类,它封装了几乎所有的关于HDC的操作. pDC一般用作CDC类的指针. 也可以这样说,HDC定义的变量指向一块内存,这内 ...

  8. 转载:汽车ABS、EBD、ESP、TCS、HDC、HHC、这些英文都有什么用处?

    首页 学习 会员 发现 等你来答 ​ 提问 ​ 80 消息 ​ 16 私信 ​ 创作中心 汽车ABS.EBD.ESP.TCS.HDC.HHC.这些英文都有什么用处? 关注问题​写回答 汽车 专业术语 ...

  9. HWND CDC HDC的转换

    CWnd *pWnd = CWnd::FromHandle(hWnd); //hWnd ------->CWnd HDC hDC = GetDC(hWnd); //hWnd -------> ...

最新文章

  1. socket什么意思_浅析Redis为什么这么快
  2. APP的UI测试要点
  3. 三张內存变化图揭秘基本类型数组的初始化
  4. flink读取不到文件_日处理数据量超10亿:友信金服基于Flink构建实时用户画像系统的实践...
  5. idea 内存溢出解决方法
  6. 小学少年宫计算机组活动教案,小学少年宫计算机兴趣小组活动记录表汇编
  7. 水题 UVA 1586 - Ancient Cipher化学式分子量计算
  8. 面向对象:类的定义和使用
  9. Linux 内核进程uid,Linux内核学习笔记: uid之ruid,euid,suid
  10. linux 关闭虚拟化,虚拟化之KVM virsh常用命令篇
  11. 如何为Kalman Studio编写T4模板
  12. java 处理txt_java 读写 txt 文件
  13. 北斗GNSS无人巡检车辆的高精度定位定向应用方案
  14. NotImplementedError: Invalid CAN Bus Type - None
  15. “函数...已有主体”问题解决
  16. 描述linux shell中单引号,linux shell中单引号、双引号、反引号、反斜杠的区别
  17. 针对初学者的React Crash课程,第3部分
  18. 信用证的好处!只要有信用证,没有不符点,就能收到钱!
  19. 计算机编程英语单词多少,计算机编程常用英语单词
  20. Laravel OAuth2 (二) ---配置与数据库设计

热门文章

  1. 什么是CDN?怎么搭建?搭建CDN需要什么软件!
  2. ARM体系架构—ARMv7-A处理器模式及寄存器
  3. 设计模式学习难度系数排名
  4. Vue beforeRouteUpdate 监测路由
  5. mac pdf去水印_PDF水印工具Mac版
  6. java制作安卓游戏脚本_autoA开源(用java写安卓无障碍脚本)
  7. golang 后台管理系统框架
  8. Vissim83D动态仿真
  9. 【Python技巧】正则表达式:(?:)匹配多个字符串之一;(非获取匹配)
  10. linux启动时、登录时或注销时执行脚本