小甲鱼 发表于 2014-9-24 16:10:03

GetDC

函数功能:

GetDC 函数用户获得指定窗口的客户区或整个屏幕的设备环境句柄,随后,你可以在 GDI 函数中使用该句柄在设备环境中绘图。

设备环境是一个不公开的数据结构,它的值供 GDI 函数内部使用。


API 函数原型:

注释:_In_ 说明该参数是输入的,_opt_ 说明该参数是可选参数。
HDC GetDC(
_In_HWND hWnd
);

参数解析:


参数 含义
hWnd1. 指定的窗口句柄
2. 如果该值是 NULL,获得整个屏幕的设备环境


返回值:

1. 如果函数调用成功,返回值是指定窗口的客户区的设备环境句柄;

2. 如果函数调用失败,返回值是 NULL。


备注:

1. GetDC 函数根据指定类型的窗口获得普通的、典型的或特有的设备环境。

2. 对于普通的设备环境,GetDC 函数在每次调用的时候为它赋值默认属性;对于典型的和特有的设备环境,GetDC 函数不改变先前设置的属性。

3. 在使用普通的设备环境绘图之后,必须调用 ReleaseDc 函数释放该设备环境;典型的和特有的设备环境则不需要释放,设备环境的个数仅受有效内存的限制。

4. 有一点要特别注意,GetDC 函数对系统的开销相对比较大,如果你的应用程序里使用了几百个 GetDC 函数而又不通过 ReleaseDC 函数释放的话,那么你机器运行速度将是龟速。

【API档案】版权归鱼C工作室(www.fishc.com)所有,转载请注明来源。

WinSDK

fred_tan 发表于 2017-1-11 15:05:40

如果获取整个屏幕的DC:
HDC hdcScreen;
hdcScreen = GetDC(NULL);

那么DC怎么释放?是不是这样:
ReleaseDC(NULL, hdcScreen);
页: [1]
查看完整版本: GetDC