CreateCompatibleDC()和GetDC()区别在哪里
2014-10-10 13:45
330 查看
今天看到一个
CreateCompatibleDC()和GetDC()区别在哪里的题目,解释的很好,故抄下来,便于自己查找
CreatCompatibleDC()创建了一个和当前屏幕的DC兼容的内存DC(DC就是设备上下文的意思,设备上下文就是当前的这个窗体的一些属性,譬如说他使用的画刷,画笔等等),在绘制位图的时候,你必须要在内存中建立这样的一个和当前设备的环境兼容的DC,也就是用这个函数建立,这样你才能把位图加载到这块内存里,然后在利用BitBlt函数将位图从内存复制到屏幕DC上,位图才能显示出来。这里涉及到一个概念:设备相关位图(DDB),设备无关位图(DIB)。GetDC()获取设备指针,该函数检索一指定窗口的客户区域或整个屏幕的显示设备上下文的句柄.以后可以在GDI函数中用该句柄绘图. 也就是取得设备上下文,供绘图或者其他的行为使用。
相关文章推荐
- 关于Assembly.CreateInstance()与Activator.CreateInstance()方法的区别
- 瞧,两题区别在哪里?
- CreateCompatibleDC CreateCompatibleBitmap SelectObject详解
- CreateWindow与CreateWindowEx的区别
- 管中窥豹-------Debug和Release到底区别在哪里
- 集群分为哪几种?集群的区别在于哪里?
- 值类型和引用类型的区别在哪里?
- BeginPaint()与GetDC()的区别
- 集群分为哪几种?集群的区别在于哪里?
- 请问在手机上网时,GPRS上网和WAP上网的本质区别在哪里?从表面看是否可以马上区分出是何种上网方式?(GPRS or WAP)
- 很怪异的asp问题,set rs=server.createobject("adodb.recordset")和set rs=conn.execute(sql)的区别
- 转VC绘制位图--BeginPaint()与GetDC()的区别
- BeginPaint和GetDC有什么区别?
- 关于Assembly.CreateInstance()与Activator.CreateInstance()方法的区别
- 堆和栈 的区别在哪里?zz
- VC绘制位图--BeginPaint()与GetDC()的区别
- 【PB】谈 Create 和 OpenUserObject 创建 GraphicObject 对象的区别
- [转]CWnd中PreCreateWindow、PreSubclassWindow、SubclassWindow的区别
- DE mode 和 HV mode 的区别在哪里?
- 关于Assembly.CreateInstance()与Activator.CreateInstance()方法的区别