原文地址::http://www.cnblogs.com/Lisen/archive/2010/01/22/1654384.html
相关网帖
1.GDI编程小结----http://www.360doc.com/content/10/1020/20/3550092_62550872.shtml
2.关于DC的理解----http://blog.youkuaiyun.com/cys1991/article/details/7648805
3.详解windows设备内容(device context)----http://www.58os.com/BBS/TechBSS/Article-5967.html
4.Vc中关于DC(设备环境函数(Device Context))的理解----http://caodong8962.itpub.net/post/42952/519845
5.bitmap相关的一些知识----http://smycll.blog.hexun.com/74043325_d.html
GetDC
原型:
HWND hWnd,
HRGN hrgnClip,
DWORD flags);
值 | 描述 |
DCX_WINDOW | 返回于窗口矩形而不是客户端矩形对应的DC。 |
DCX_CACHE | 从缓存中取回DC,而不是OWNDC 或 CLASSDC 窗口。实际上重写了CS_OWNDC 和CS_CLASSDC 了。 |
DCX_PARENTCLIP | 使用父窗口的可见区域。取消父窗口的WS_CLIPCHILDREN 和 CS_PARENTDC 标志位。DC的起始坐标设置为由hWnd标识的窗口的左上角。 |
DCX_CLIPSIBLINGS | 排除由hWnd标识的窗口的所有同级窗口的可见区域。 |
DCX_CLIPCHILDREN | 排除由hWnd标识的窗口的所有子窗口的可见区域。 |
DCX_NORESETATTRS | 当该DC释放时,不用设置该DC的属性为默认值。 |
DCX_EXCLUDERGN | 从返回的DC的可见区域里去除hrgnClip标识的剪切区域。 |
DCX_EXCLUDEUPDATE | 返回一个区域,该区域去除了窗口更新的区域。 |
DCX_INTERSECTRGN | hrgnClip表示的剪切区域和返回DC的可见区域取交集。 |
DCX_INTERSECTUPDATE | 返回一个区域,该区域包含窗口更新的区域。 |
DCX_VALIDATE | 当指定DCX_INTERSECTUPDATE,引起DC完全有效(causes the device context to be completely validated.)。 在该函数中使用DCX_INTERSECTUPDATE 和DCX_VALIDATE 等价于使用BeginPaint函数。 |
//===============================================
备注::
1.因为一次只能有5个公共DC可用,如果释放DC失败,将可能导致其他程序访问DC失败。-----不知道真这话是不是一个真理,有时间的好好验证一下!!!
2.bitmap只可以选入"内存DC",一个bitmap不能同时选入多个DC