关于API函数GetDC()的问题,有一个单词的意思不懂!望大侠指点!
hdcScreen = GetDC(0&)
hWnd
[in] Handle to the window whose DC is to be retrieved. If this value is NULL, GetDC retrieves the DC for the entire screen.
其中的entire screen指的是桌面?
[解决办法]
是桌面,如果hwnd = 0 ,getdc 返回一个代表桌面区域的dc
也就是说,getwindowdc(0) 和 getdc(0) 在使用上是一样的,即便两个方法返回值可能不同。。
[解决办法]
GetDC这个API有一个参数,如果这个参数是一个窗体的句柄,就返回这个句柄的DC,如果是0就是返回桌面区的DC。
[解决办法]
路过……
[解决办法]
the entire screen----整个屏幕,不能理解为桌面,桌面与屏幕是两码事.桌面应想象成一个文件夹.
[解决办法]
hdcScreen = GetDC(0&)获取的是屏幕对象的DC.
[解决办法]
hwnd ----------- Long,将获取其设备场景的窗口的句柄。若为0,则要获取整个屏幕的DC
[解决办法]
Public Declare Function GetDC Lib "user32" (ByVal hwnd As Long) As Long
【操作系统】
Win9X:Yes
WinNT:Yes
【说明】
获取指定窗口的设备场景
【返回值】
Long,指定窗口的设备场景句柄,出错则为0
【其它】
若窗口所属类具有CS_OWNDC,
CS_CLASSDC 或 CS_PARENTDC样式,则获取的设备场景属窗口或类专有。vb的窗体和图片框控件也是这种情况,它用该函数取得的结果和控件的hdc属性相同(在autoredraw为FALSE时)。您无须考虑取回的窗体或图片框控件设备场景的默认状态,特别是绘图对象。另外,默认状态随着窗体和控件autoredraw属性的设置而不同。在设备场景释放前您必须回复其状态为初始值。对于没有CS_OWNDC,
CS_CLASSDC 或 CS_PARENTDC样式的窗口的设备场景,可从通用windows缓存中获取,其状态为默认值。缓存中可用设备场景数量是有限的,因此只要可能就释放设备场景
用本函数获取的设备场景一定要用ReleaseDC函数释放,不能用DeleteDC
【参数表】
hwnd ----------- Long,将获取其设备场景的窗口的句柄。若为0,则要获取整个屏幕的DC