GetDC与GetSafeHdc的区别

来源:百度知道 编辑:UC知道 时间:2024/05/16 17:01:02
我想知道在CDC类中的这两个函数的区别!

GetSafeHdc
Call this member function to get m_hDC, the output device context.
返回输出设备上下文的句柄
Win32 编程时用HDC 来操作 绘图设备
MFC中封装了HDC 但为了和Win32 兼容,
就用这个函数得到它,以备用户操作HDC
有关HDC 请看Win32编程相关内容
上传人:franva
2008.2.27
===========================================================
GetDC 函数功能:该函数检索一指定窗口的客户区域或整个屏幕的显示设备上下文环境的句柄,以后可以在GDI函数中使用该句柄来在设备上下文环境中绘图。
GetDCEx函数是GetDC的一个扩展,它能使应用程序更多地控制在客户区域内如何或是否发生剪切。
函数原型:HDC GetDC(HWND hWnd);
参数:
hWnd:设备上下文环境被检索的窗口的句柄,如果该值为NULL,GetDC则检索整个屏幕的设备上下文环境。
Windows 98,WindowsNT 5.0或以后版本:如果该参数为Null,GetDC检索首要显示器的设备上下文环境,要得到其他显示器的设备上下文环境,可使用EnumDisplayMonitors和CreateDc函数。
返回值:如果成功,返回指定窗口客户区的设备上下文环境;如果失败,返回值为Null。
Windows NT:若想获得更多错误信息,可调用GetLastError函数。
注释:GetDC函数根据指定的等级类型检索指定窗口普通的、典型的或特有的设备上下文环境。
对于普通设备上下文环境,GetDC在每次检索的时候部分分配给它缺省特性,对于典型和特有的设备上下文环境,GetDC不改变先前设置的特性。
在使用普通设备上下文环境绘图之后,必须调用ReleaseDc函数释放该设备上下文环境,典型和特有设备上下文环境不需要释放,设备上下文环境的个数仅受有效内存的限制