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

原型:

HDC CreateCompatibleDC(HDC hdc);

参数:

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

返回值:

如果成功,则返回内存设备上下文环境的句柄;如果失败,则返回值为NULL。若想获得更多错误信息,请调用GetLastError函数。

说明:

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

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

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

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

参考例子:

// hdcExist: Handle to an existing device context
// Create DC compatible with hdcExist.
hdcCanvas  =  CreateCompatibleDC( hdcExist);
if  ( hdc  ==  NULL)
        return;

// Create compatible HBITMAP
hbCanvas  =  CreateCompatibleBitmap( hdcSkin,  ScreenWidth,  ScreenHeight);

// Select HBITMAP into DC
SelectObject(hdcCanvas, hbCanvas);

CreateCompatibleDC 说明相关推荐

  1. Win32 API CreateCompatibleDC 函数的相关应用

    关于 CreateCompatibleDC 函数的用法的说明如下: Windows不允许程序员直接访问硬件,它对屏幕的操作是通过环境设备,也就是DC来完成的.屏幕上的每一个窗口都对应一个DC,可以把D ...

  2. CDC之CreateCompatibleDC与BitBlt

    CreateCompatibleDC 创建一个与指定设备一致的内存设备描写叙述表. HDC CreateCompatibleDC(HDC hdc //设备描写叙述表句柄); 參数 hdc 现有的设备描 ...

  3. CreateCompatibleDC用法[转]

    CreateCompatibleDC Creates a memory device context that is compatible with the device specified by p ...

  4. CreateCompatibleDC 解释

    函数功能:该函数创建一个与指定设备兼容的内存设备上下文环境(DC). 函数原型:HDC CreateCompatibleDC(HDC hdc): 参数: hdc:现有设备上下文环境的句柄,如果该句柄为 ...

  5. 对CreateCompatibleDC的粗浅认识

    gdi在sdk应该是很重要的东西,不过嘛自己的水平实在是不怎么够品.长久以来一直都没有认识到 CreateCompatibleDC  的用途到底在这里,不过还好从知道这个东西数起的200天内,我终于还 ...

  6. 什么是DC,以及CreateCompatibleDC,CreateCompatibleBitmap,SelectObject的作用

    1.DC是设备上下文的意思,那么什么是设备上下文呢? 举个例子:比如画家画画,那么他需要准备画笔,画纸等一些工具,而画笔又有许多属性,比如,粗细,颜色,那么我们在画画之前,需要确定我们画画所用的画笔的 ...

  7. CreateCompatibleDC,CreateCompatibleBitmap,SelectObject详解

    物理HDC 设备底层会拥有显存等资源,但是兼容DC并没有给图像像素提供内存空间,因此兼容DC总是和BITMAP配合使用,这样一来,兼容DC就利用BITMAP的图像像素数据空间给自己提供类似于显存的内存 ...

  8. CreateCompatibleDC(HDC hdc);

    函数功能:该函数创建一个与指定设备兼容的内存设备上下文环境(DC). 函数原型:HDC CreateCompatibleDC(HDC hdc): 参数: hdc:现有设备上下文环境的句柄,如果该句柄为 ...

  9. MFC中CreateCompatibleDC的作用

    为什么要用此函数来生成一个兼容DC来存放CBitmap对象? 而不是直接把位图存进CDC类的对象中? WindowsGDI的接口没提供这样的功能机制,只能是先通过CreateCompatibleDC ...

  10. CreateCompatibleDC CreateCompatibleBitmap SelectObject详解

    物理HDC 设备底层会拥有显存等资源,但是兼容DC并没有给图像像素提供内存空间,因此兼容DC总是和BITMAP配合使用,这样一来,兼容DC就利用BITMAP的图像像素数据空间给自己提供类似于显存的内存 ...

最新文章

  1. python画仿真图-仿真入门:几行 Python 代码实现复杂社会动力学
  2. C#实现http断点下载
  3. 【HTTP】之HTTP 错误 401.3 - 访问被资源 ACL 拒绝
  4. linux实验三shell程序设计,实验三 LINUX SHELL编程
  5. ie 7 beta 2出来了
  6. 【全网最全】一文搞定 Linux 压缩、解压哪些事儿
  7. myelclipse Servers视图报错
  8. 搜索引擎广告计费系统如何防恶意点击
  9. Asp组件初级入门与精通系列之六
  10. 腾讯云Centos上部署Mongodb
  11. 速修复!开源 IT 基础设施管理解决方案 Salt 被曝多个严重漏洞
  12. python实现将子文件夹下的图片复制到新的文件夹并重命名
  13. python系列教程_python基础学习系列教程2-进阶之路中绕不开的知识点。
  14. java字符串长度_Java字符串长
  15. 内存颗粒位宽和容量_内存颗粒的位数是指什么?
  16. Nitrux安装JDK-10(Linux通用)教程
  17. 金仓数据库KingbaseES之WITH ORDINALITY
  18. 利用JavaScript批量删除QQ空间说说(只需一个浏览器)
  19. 计算机各类会议及投稿文章总结(快速入门)
  20. 让旧Mac免费获得 iWork 套件的秘籍

热门文章

  1. java编程技术交流
  2. Android Zygote进程启动过程
  3. S32DS中.ld(链接)文件学习
  4. 分布式Session共享和单点登录实现
  5. C语言中访问结构体成员时 点 . 和 箭头 - 的区别
  6. SQL 错误 [40000] [42000]: Error while compiling statement: FAILED
  7. 为啥是SoA?(SoA化的挑战)
  8. Google登录接入
  9. 搭建 WNMP 环境
  10. MySQL JDBC PreparedStatement