VB聲明 |
||
Declare Function GetDCEx Lib "user32" Alias "GetDCEx" (ByVal hwnd As Long, ByVal hrgnclip As Long, ByVal fdwOptions As Long) As Long |
||
說明 |
||
為指定窗口獲取設備場景。相比GetDC,本函數(shù)提供了更多的選項 |
||
返回值 |
||
Long,執(zhí)行成功為指定窗口設備場景句柄。出錯則為0 |
||
參數(shù)表 |
||
參數(shù) |
類型及說明 |
|
hwnd |
Long,窗口句柄 |
|
hrgnclip |
Long,窗口剪裁區(qū) |
|
fdwOptions |
Long,標志字。根據(jù)下列常數(shù)設置各位: |
|
DCX_CACHE |
不管窗口類的樣式,從windows緩存獲取設備場景 |
|
DCX_CLIPCHILREN |
所有可見的子窗口區(qū)都要從DC的剪裁區(qū)中排除 |
|
DCX_CLIPSIBLINGS |
窗口hWnd上的所有可見兄弟窗口都要從DC的剪裁區(qū)中排除 |
|
DCX_EXCLUDERGN |
從DC剪裁區(qū)中排除由hrgnclip指定的區(qū)域 |
|
DCX_EXCLUDEUPDATE |
從設備場景剪裁區(qū)中排除刷新區(qū)域 |
|
DCX_INTERSECTRGN |
由hrgnclip指定的區(qū)域與設備場景剪裁區(qū)相交 |
|
DCX_INTERSECTUPDATE |
指定區(qū)域與設備場景刷新區(qū)域相交 |
|
DCX_LOCKWINDOWUPDATE |
該標志為允許向窗口繪圖,即使它由于LockWindowUpdate的調(diào)用被鎖住 |
|
DCX_NORESETATTRS |
設備場景釋放后不被重置為默認狀態(tài) |
|
DCX_PARENTCLIP |
放棄CS_PARENTDC類樣式設置。DC的起點設為hWnd窗口的左上角 |
|
DCX_WINDOW |
A device context is returned for the entire window rectangle rather than just the client area of the window |
|
DCX_VALIDATE |
Combine with DCX_INTERSECTUPDATE, validates the clipping region |
|
注解 |
||
若窗口所屬類具有CS_OWNDC, CS_CLASSDC 或 CS_PARENTDC樣式,則獲取的設備場景屬窗口或類專有。這時,設備場景狀態(tài)不能從初值修改。vb的窗體和控件通常是這種情況。否則,置DCX_CACHE位以從通用windows緩沖區(qū)恢復設備場景。若不置該位,則函數(shù)返回0。DC的狀態(tài)位默認設置。從緩存獲取的設備場景用過后要用ReleaseDC函數(shù)釋放以防止系統(tǒng)死鎖,因為windows只有5個緩存DC可用 其他情況參見GetDC函數(shù)注解 |