PFNCOMPROPSHEET 回呼函式 (compstui.h)
ComPropSheet 函式是由 CPSUI 提供,可由 CPSUI 應用程式呼叫, (包括印表機介面 DLL) 來建置屬性表頁面。
語法
PFNCOMPROPSHEET Pfncompropsheet;
LONG_PTR Pfncompropsheet(
[in] HANDLE hComPropSheet,
[in] UINT Function,
[in] LPARAM lParam1,
[in] LPARAM lParam2
)
{...}
參數
[in] hComPropSheet
屬性表 群組父代的呼叫端提供的句柄。 如需詳細資訊,請參閱接下來的<備註>一節。
[in] Function
呼叫端提供的CPSFUNC_前置 ComPropSheet 函式程式代碼,指定要由 ComPropSheet 函式執行的作業。 See the ComPropSheet function codes table in the Remarks section below.
[in] lParam1
呼叫端提供的值,取決於提供給 Function 的 ComPropSheet 函式程式代碼。
[in] lParam2
呼叫端提供的值,取決於提供給 Function 的 ComPropSheet 函式程式代碼。
傳回值
傳回值取決於提供給 Function 的 ComPropSheet 函式程式代碼。
備註
當 CPSUI 呼叫其中一個應用程式的 PFNPROPSHEETUI 型別函式時,它會在PROPSHEETUI_INFO結構中傳遞 ComPropSheet 函式的指標。 PFNPROPSHEETUI 型別函式可以呼叫 ComPropSheet 函式,將屬性表頁面描述為 CPSUI。
印表機介面 DLL 可以從其 DrvDocumentPropertySheets 函式或其 DrvDevicePropertySheets 函式內呼叫 ComPropSheet。
Microsoft Unidrv 和 Pscript 驅動程式的使用者介面外掛程式可以從其 IPrintOemUI::D ocumentPropertySheets 和 IPrintOemUI::D evicePropertySheets 方法內呼叫 ComPropSheet。
為 hComPropSheet 參數指定的群組父句柄可以是下列其中一項:
PROPSHEETUI_INFO 結構之 hComPropSheet 成員中收到的句柄。
先前使用CPSFUNC_INSERT_PSUIPAGE函式程式代碼呼叫 ComPropSheet 而收到的句柄,並將PSUIPAGEINSERT_GROUP_PARENT指定為INSERTPSUIPAGE_INFO結構的 Type 成員。
ComPropSheet 函式程式代碼
下列函式程式代碼可以傳遞至 CPSUI 的 ComPropSheet 函式:
CPSFUNC_ADD_HPROPSHEETPAGE
CPSFUNC_ADD_HPROPSHEETPAGE函式程式代碼會導致 ComPropSheet 函式新增屬性表頁面,該頁面是藉由呼叫 CreatePropertySheetPage 函式所建立的。
參數 (CPSFUNC_ADD_HPROPSHEETPAGE)
hComPropSheet:群組父句柄
函式:呼叫者會在呼叫 ComPropSheet 以新增屬性表頁面時,將此函式程式代碼參數設定為CPSFUNC_ADD_HPROPSHEETPAGE
lParam1:呼叫 CreatePropertySheetPage 函式取得的屬性表頁面句柄
lParam2:未使用,必須是零
傳回值 (CPSFUNC_ADD_HPROPSHEETPAGE)
如果作業成功, ComPropSheet 會將 CPSUI 句柄傳回至新增的頁面;否則會傳回 NULL。
CPSFUNC_ADD_PCOMPROPSHEETUI
CPSFUNC_ADD_PCOMPROPSHEETUI函式程式代碼會使 ComPropSheet 函式加入一組由 COMPROPSHEETUI 結構描述的一或多個屬性表頁面。
參數
hComPropSheet:群組父句柄
函式:呼叫者會在呼叫 ComPropSheet 以新增一或多個屬性表頁面集時,將此函式程式碼參數設定為CPSFUNC_ADD_PCOMPROPSHEETUI
lParam1: COMPROPSHEETUI 結構的指標
lParam2:要接收新增頁面數目的 32 位位置指標,如果發生失敗,則ERR_CPSUI前置錯誤碼
傳回值
如果作業成功, ComPropSheet 會傳回已新增頁面集的句柄;否則,函式會傳回NULL。
CPSFUNC_ADD_PFNPROPSHEETUI
CPSFUNC_ADD_PFNPROPSHEETUI函式程式代碼會使 ComPropSheet 函式呼叫指定的 PFNPROPSHEETUI 型別函式,這必須加入一組一或多個屬性表頁面。
參數 (CPSFUNC_ADD_PFNPROPSHEETUI)
hComPropSheet:群組父句柄
函式:呼叫者會在呼叫 ComPropSheet 時,將此函式程式碼參數設定為CPSFUNC_ADD_PFNPROPSHEETUI。 ComPropSheet 接著會呼叫指定的 PFNPROPSHEETUI 型別函式,以新增一組一或多個屬性表頁面。
lParam1:P FNPROPSHEETUI 型別函式的指標
lParam2:傳遞至其 lParam 參數之 PFNPROPSHEETUI 型別函式的 32 位值
傳回值 (CPSFUNC_ADD_PFNPROPSHEETUI)
如果作業成功, ComPropSheet 會傳回已新增頁面集的句柄;否則,函式會傳回NULL。
CPSFUNC_ADD_PROPSHEETPAGE
CPSFUNC_ADD_PROPSHEETPAGE函數程式代碼會使 ComPropSheet 函式加入 PROPSHEETPAGE 結構所描述的屬性表頁面類型。
參數 (CPSFUNC_ADD_PROPSHEETPAGE)
hComPropSheet:群組父句柄
函式:呼叫者會在呼叫 ComPropSheet 時,將此函式程式碼參數設定為CPSFUNC_ADD_PROPSHEETPAGE,以新增 PROPSHEETPAGE 結構所描述的屬性表頁面類型。 ComPropSheet 函式會呼叫 CreatePropertySheetPage 函式,並傳遞 PROPSHEETPAGE 結構的位址來建立頁面。
lParam1: PROPSHEETPAGE 結構的指標
lParam2:未使用,必須是零
傳回值 (CPSFUNC_ADD_PROPSHEETPAGE)
如果作業成功, ComPropSheet 會將 CPSUI 句柄傳回至新增的頁面;否則會傳回 NULL。
CPSFUNC_DELETE_HCOMPROPSHEET
CPSFUNC_DELETE_HCOMPROPSHEET函式程式代碼會使 ComPropSheet 函式刪除 CPSUI 句柄所指定的一組屬性表頁面。
參數 (CPSFUNC_DELETE_HCOMPROPSHEET)
hComPropSheet:群組父句柄
函式:呼叫者會在呼叫 ComPropSheet 以刪除一組屬性表頁面時,將此函式程式碼參數設定為CPSFUNC_DELETE_HCOMPROPSHEET
lParam1:CPSUI 句柄,參考要刪除的頁面集。 此句柄先前必須透過呼叫 ComPropSheet ,並具有下列其中一個函式程式碼來取得:
CPSFUNC_ADD_HPROPSHEETPAGE
CPSFUNC_ADD_PCOMPROPSHEETUI
CPSFUNC_ADD_PFNPROPSHEETUI
CPSFUNC_ADD_PROPSHEETPAGE
CPSFUNC_INSERT_PSUIPAGE
lParam2:未使用,必須是零
傳回值 (CPSFUNC_DELETE_HCOMPROPSHEET)
ComPropSheet 函式會傳回已刪除的屬性表頁數。
CPSFUNC_DO_APPLY_CPSUI
CPSFUNC_DO_APPLY_CPSUI函式程式代碼會使 ComPropSheet 函式模擬PSN_APPLY通知訊息的傳遞。
CPSUI 會將 CPSUICB_REASON_APPLYNOW 原因傳遞給應用程式的_CPSUICALLBACK型別回呼函式,以回應 CPSFUNC_DO_APPLY_CPSUI 函式。
參數 (CPSFUNC_DO_APPLY_CPSUI)
hComPropSheet:群組父句柄
函式:呼叫者會在呼叫 ComPropSheet 以模擬傳遞PSN_APPLY通知訊息時,將此函式程式碼參數設定為CPSFUNC_DO_APPLY_CPSUI
lParam1:指向一或多個屬性表頁面集合的 CPSUI 句柄。 一般而言,此句柄先前已使用 CPSFUNC_IGNORE_CPSUI_PSN_APPLY 函式程式代碼指定為 ComPropSheet 的 lParam1 參數。
lParam2:此參數是下列位旗標的任何組合:
傳回值 (CPSFUNC_DO_APPLY_CPSUI)
如果作業成功, ComPropSheet 函式會傳回非零值;否則會傳回零,而且指定的頁面將會變成作用中。
如果您使用 CPSFUNC_IGNORE_CPSUI_PSN_APPLY 函式程式代碼來停用 CPSUI 對PSN_APPLY通知訊息的處理,您必須使用 CPSFUNC_DO_APPLY_CPSUI 函式程式碼來模擬PSN_APPLY訊息的傳遞。 否則,無法取得屬性表頁面的用戶變更。
CPSFUNC_GET_HPSUIPAGES
CPSFUNC_GET_HPSUIPAGES函式程式代碼會使 ComPropSheet 函式傳回指向屬性表頁面的 CPSUI 句柄數位。 這些句柄會識別與指定群組父句柄相關聯的子頁面。
若要使用此函式程式碼,請遵循下列步驟:
呼叫 ComPropSheet,指定 CPSFUNC_GET_PAGECOUNT 函式程式代碼,以取得與指定群組父系相關聯的子頁面數目。
配置足夠的本機記憶體,以包含每個頁面的 HANDLE 結構。
再次呼叫 ComPropSheet ,指定 CPSFUNC_GET_HPSUIPAGES 函式程式碼和本機配置記憶體的位址,以取得 HANDLE 結構的數位。
參數 (CPSFUNC_GET_HPSUIPAGES)
hComPropSheet:群組父句柄
函式:呼叫端會在呼叫 ComPropSheet 以擷取 CPSUI 句柄數位時,呼叫端將此函式程式代碼參數設定為CPSFUNC_GET_HPSUIPAGES
lParam1:HANDLE 結構的陣列指標
lParam2:lParam1 所指向的 HANDLE 陣列大小
傳回值 (CPSFUNC_GET_HPSUIPAGES)
ComPropSheet 函式會傳回 CPSUI 放入 HANDLE 陣列中的句柄數目。
CPSFUNC_GET_PAGECOUNT
CPSFUNC_GET_PAGECOUNT函式程式代碼會導致 ComPropSheet 函式傳回屬於指定群組父句柄子頁的屬性表頁數。
參數 (CPSFUNC_GET_PAGECOUNT)
hComPropSheet:群組父句柄
函式:呼叫端會在呼叫 ComPropSheet 以傳回子頁面計數時,將此函式程式碼參數設定為CPSFUNC_GET_PAGECOUNT
lParam1:未使用,必須是零
lParam2:未使用,必須是零
傳回值 (CPSFUNC_GET_PAGECOUNT)
ComPropSheet 函式會傳回計算的頁數。
CPSFUNC_GET_PFNPROPSHEETUI_ICON
CPSFUNC_GET_PFNPROPSHEETUI_ICON函式程式代碼會導致 ComPropSheet 函式傳回與一組屬性表頁面相關聯的圖示句柄。 先前必須由 PFNPROPSHEETUI 類型的函式建立一組頁面。
ComPropSheet 函式會呼叫與指定頁面句柄相關聯的 PFNPROPSHEETUI 型別函式,並傳遞PROPSHEETUI_REASON_GET_ICON的原因值。 PFNPROPSHEETUI 類型的函式接著會呼叫 LoadImage ,並提供由lParam2 指定的圖示大小以載入圖示資源。
參數 (CPSFUNC_GET_PFNPROPSHEETUI_ICON)
hComPropSheet:群組父句柄
函式:呼叫者呼叫 ComPropSheet 以擷取與一組屬性表頁面相關聯之圖示的句柄時,呼叫端會將此函式程式代碼參數設定為CPSFUNC_GET_PFNPROPSHEETUI_ICON
lParam1:參考一組屬性表頁面的 CPSUI 句柄。 此句柄先前必須透過呼叫 ComPropSheet 與 CPSFUNC_ADD_PFNPROPSHEETUI 函式程式代碼來取得。
lParam2:指定兩個 WORD 大小值,代表圖示的大小,以像素為單位。 LOWORD 值是寬度,HIWORD 值是高度。 如果這些值為零,則會使用系統計量SM_CXICON和SM_CYICON。 如需詳細資訊,請參閱 GetSystemMetrics。
傳回值 (CPSFUNC_GET_PFNPROPSHEETUI_ICON)
如果作業成功, ComPropSheet 函式會傳回圖示句柄;否則會傳回 NULL。
CPSFUNC_IGNORE_CPSUI_PSN_APPLY
CPSFUNC_IGNORE_CPSUI_PSN_APPLY函式程式代碼會導致 ComPropSheet 函式停用或重新啟用 CPSUI 處理PSN_APPLY通知訊息。
當使用者選取屬性表的 [確定] 或 [取消] 按鈕時,系統會將PSN_APPLY通知訊息傳送給 CPSUI。 CPSUI 會將 CPSUICB_REASON_APPLYNOW 原因傳遞給應用程式的_CPSUICALLBACK型別回呼函式,以回應此訊息。
如果您停用 CPSUI 對PSN_APPLY通知訊息的處理,您必須使用 CPSFUNC_DO_APPLY_CPSUI 函式程式代碼來模擬PSN_APPLY訊息的傳遞。 否則,無法取得對屬性表頁面的用戶變更。
如果未使用 CPSFUNC_IGNORE_CPSUI_PSN_APPLY 函式程式代碼,則預設會啟用 CPSUI 處理PSN_APPLY通知訊息。
參數 (CPSFUNC_IGNORE_CPSUI_PSN_APPLY)
hComPropSheet:群組父句柄
函式:呼叫端會在呼叫 ComPropSheet 以停用或重新啟用PSN_APPLY通知訊息的 CPSUI 處理時,將此函式程式代碼參數設定為CPSFUNC_IGNORE_CPSUI_PSN_APPLY
lParam1:參考一或多個屬性表頁面集合的 CPSUI 句柄。 此句柄先前必須由呼叫 ComPropSheet 取得,其函式程式代碼為 CPSFUNC_ADD_PCOMPROPSHEETUI,或是具有 CPSFUNC_INSERT_PSUIPAGE 的函式程式代碼,以及 插入類型的 PSUIPAGEINSERT_PROPSHEETPAGE。
lParam2:任何非零值都停用 CPSUI 的傳遞 CPSUICB_REASON_APPLYNOW 原因。 零值可重新啟用 CPSUICB_REASON_APPLYNOW 原因的傳遞。
傳回值 (CPSFUNC_IGNORE_CPSUI_PSN_APPLY)
如果作業成功, ComPropSheet 函式會傳回非零值;否則會傳回零。
CPSFUNC_INSERT_PSUIPAGE
CPSFUNC_INSERT_PSUIPAGE函式程式代碼會導致 ComPropSheet 函式在特定位置插入一組屬性表頁面。
參數 (CPSFUNC_INSERT_PSUIPAGE)
hComPropSheet:群組父句柄
函式:呼叫者呼叫 ComPropSheet 以在特定位置插入一組屬性表頁面時,呼叫端會將此函式程式代碼參數設定為CPSFUNC_INSERT_PSUIPAGE
lParam1:指定一組一或多個屬性表頁面的句柄。 根據 lParam2 所指向之INSERTPSUIPAGE_INFO結構的 Mode 成員,新頁面將會插入這些頁面之前或之後。 此句柄先前必須透過呼叫 ComPropSheet ,並具有下列其中一個函式程式碼來取得:
CPSFUNC_ADD_HPROPSHEETPAGE
CPSFUNC_ADD_PCOMPROPSHEETUI
CPSFUNC_ADD_PFNPROPSHEETUI
CPSFUNC_ADD_PROPSHEETPAGE
CPSFUNC_INSERT_PSUIPAGE
lParam2: INSERTPSUIPAGE_INFO 結構的指標,描述應該插入新頁面的位置和方式
傳回值 (CPSFUNC_INSERT_PSUIPAGE)
如果作業成功, ComPropSheet 函式會傳回插入頁面集的句柄;否則,函式會傳回NULL。
CPSFUNC_LOAD_CPSUI_ICON
CPSFUNC_LOAD_CPSUI_ICON函式程式代碼會導致 ComPropSheet 函式載入 CPSUI 提供的圖示資源。
CPSUI 會呼叫 LoadImage 來載入指定的圖示資源。
參數 (CPSFUNC_LOAD_CPSUI_ICON)
hComPropSheet:群組父句柄
函式:呼叫端會在呼叫 ComPropSheet 以載入 CPSUI 提供的圖示資源時,將此函式程式代碼參數設定為CPSFUNC_LOAD_CPSUI_ICON
lParam1:要載入之 CPSUI 所提供圖示的資源識別碼。 這必須是 Compstui.h 中所定義的IDI_CPSUI前置標識符。
lParam2:指定兩個 WORD 大小值,代表圖示的大小,以像素為單位。 LOWORD 值是寬度,HIWORD 值是高度。 如果這些值為零,則會使用系統計量SM_CXICON和SM_CYICON。 如需詳細資訊,請參閱 GetSystemMetrics
傳回值 (CPSFUNC_LOAD_CPSUI_ICON)
如果作業成功, ComPropSheet 函式會傳回圖示句柄;否則會傳回 NULL。
CPSFUNC_LOAD_CPSUI_STRING
CPSFUNC_LOAD_CPSUI_STRING函式程式代碼會導致 ComPropSheet 函式載入 CPSUI 提供的字串資源。
ComPropSheet 函式會呼叫 LoadString] (/windows/win32/api/winuser/nf-winuser-loadstringw) 函式來載入指定的字符串。
參數 (CPSFUNC_LOAD_CPSUI_STRING)
hComPropSheet:群組父句柄
函式:呼叫端會在呼叫 ComPropSheet 以載入 CPSUI 提供的字串資源時,將此函式程式代碼參數設定為 CPSFUNC_LOAD_CPSUI_STRING
lParam1:呼叫端配置的緩衝區的 LPSTR 型別指標,其中會放置 HIWORD 所指定的 CPSUI 字串 (lParam2)
lParam2:包含下列兩個呼叫端提供的值:
LOWORD (lParam2) 。 lParam1 所指向之緩衝區的大小,以位元組為單位。
HIWORD (lParam2) 。 要載入之 CPSUI 所提供字串的資源識別碼。 這必須是 Compstui.h 中所定義的IDS_CPSUI前置標識符。
傳回值 (CPSFUNC_LOAD_CPSUI_STRING)
如果作業成功, ComPropSheet 函式會傳回字串的長度。 如果指定了無效的資源標識符,函式會傳回零。 如果 lParam1 為 NULL 或 LOWORD (lParam2) 為零,則函式會傳回 -1。
CPSFUNC_QUERY_DATABLOCK
CPSFUNC_QUERY_DATABLOCK函式程式代碼會使 ComPropSheet 函式擷取先前使用 CPSFUNC_SET_DATABLOCK 函式程式代碼儲存的呼叫端提供的數據區塊。
一般而言,當函式的 CPSUICBPARAM 結構包含 CPSUICB_REASON_SETACTIVE) 的 Reason 值,以擷取目前頁面變成非使用中之前,_CPSUICALLBACK型別回呼函式會使用此函式程式代碼 (。
參數 (CPSFUNC_QUERY_DATABLOCK)
hComPropSheet:群組父句柄
函式:呼叫者會在呼叫 ComPropSheet 以擷取呼叫端提供的數據區塊時,將此函式程式代碼參數設定為CPSFUNC_QUERY_DATABLOCK
lParam1: CPSUIDATABLOCK 結構的指標,可識別緩衝區的大小和位置,以接收要求的數據區塊
lParam2:D WORD 大小的標識碼值,用來識別要求的 CPSUIDATABLOCK 結構。 這個值必須在先前使用 CPSFUNC_SET_DATABLOCK 函式程式代碼呼叫 ComPropSheet 時指定。
傳回值 (CPSFUNC_QUERY_DATABLOCK)
如果作業成功, ComPropSheet 函式會傳回值,代表擷取的數據區塊大小。 如果 lParam1 為 NULL,或者所提供 CPSUIDATABLOCK 結構的任何成員值為零, ComPropSheet 會 傳回儲存數據區塊所需的大小。 如果發生錯誤,函式會傳回小於或等於零的值。
CPSFUNC_SET_DATABLOCK
CPSFUNC_SET_DATABLOCK函式程式代碼會導致 ComPropSheet 函式儲存呼叫端提供的數據區塊。 您可以使用此函式程式碼,讓屬性表頁面的相關信息可供其他頁面使用。
一般而言,當函式的 CPSUICBPARAM 結構包含 CPSUICB_REASON_KILLACTIVE) 的 Reason 值時,_CPSUICALLBACK型別回呼函式會使用此函式程式代碼 (,以在頁面變成非使用中之前儲存與頁面相關聯的值。
參數 (CPSFUNC_SET_DATABLOCK)
hComPropSheet:群組父句柄
函式:呼叫者會在呼叫 ComPropSheet 以儲存呼叫端提供的數據區塊時,將此函式程式碼參數設定為CPSFUNC_SET_DATABLOCK
lParam1: CPSUIDATABLOCK 結構的指標,描述要儲存的數據區塊
lParam2:呼叫端定義的 DWORD 大小標識碼值。 它會用來識別後續使用 CPSFUNC_QUERY_DATABLOCK 函式程式代碼呼叫 ComPropSheet 時提供的 CPSUIDATABLOCK 結構。
傳回值 (CPSFUNC_SET_DATABLOCK)
如果作業成功, ComPropSheet 函式會傳回值,代表已儲存的位元組數目;否則會傳回小於或等於零的值。
CPSFUNC_SET_DMPUB_HIDEBITS
CPSFUNC_SET_DMPUB_HIDEBITS函式程式碼會使 ComPropSheet 函式「隱藏」一組指定的檔案屬性選項,使其不會顯示。
如果您想要為一或多個檔案屬性表選項定義 OPTITEM 結構,但不想讓選項成為使用者可修改,您可以使用 CPSFUNC_SET_DMPUB_HIDEBITS 函式程式碼。 屬性表頁面必須使用 COMPROPSHEETUI 結構來定義,而且結構的 pDlgPage 成員必須 CPSUI_PDLGPAGE_DOCPROP 或 CPSUI_PDLGPAGE_ADVDOCPROP。
如果您使用CPSFUNC_SET_DMPUB_HIDEBITS函式程式代碼,則必須在CPSFUNC_ADD_PCOMPROPSHEETUI或CPSFUNC_INSERT_PSUIPAGE函式程式代碼用來建立頁面之前,將它指定給 ComPropSheet。
參數 (CPSFUNC_SET_DMPUB_HIDEBITS)
hComPropSheet:群組父句柄
函式:呼叫者會在呼叫 ComPropSheet 以「隱藏」指定的文件屬性選項集時,將此函式程式碼參數設定為CPSFUNC_SET_DMPUB_HIDEBITS
lParam1:位數組的指標,表示要隱藏的選項。 此陣列必須使用 MAKE_DMPUB_HIDEBIT (DMPub) 宏來建立,其中 DMPub 是一或多個DMPUB_前置常數的 OR 組合。 DMPUB_前置常數會列在 OPTITEM 結構的描述中。 宏和常數定義於 Compstui.h 中。
lParam2:未使用,必須是零
傳回值 (CPSFUNC_SET_DMPUB_HIDEBITS)
如果作業成功, ComPropSheet 函式會傳回為 lParam1 指定的值;否則會傳回零。
CPSFUNC_SET_FUSION_CONTEXT
CPSFUNC_SET_FUSION_CONTEXT會設定指定頁面的 Fusion 啟用內容。
當頁面即將建立或插入,且未在其 PROPSHEETPAGE 結構中指定啟用內容時,它會在父頁面啟用內容中建立。
如果未設定父系的啟用內容,則 Compstui.dll 查閱父系的父系,繼續直到達到最上層父系,或直到找到已正確設定啟用內容的父系為止。
如果沒有任何父系具有啟用內容集,則 Compstui.dll 不會在 PROPSHEETPAGE 結構中指定啟用內容。 這表示頁面將會建立在 PropertySheet 函式呼叫端的啟用內容中。
參數 (CPSFUNC_SET_FUSION_CONTEXT)
hComPropSheet:群組父句柄
函式:呼叫者會在呼叫 ComPropSheet 時,將此函式程式代碼參數設定為CPSFUNC_SET_FUSION_CONTEXT,以設定指定頁面的 Fusion 啟用內容
lParam1:指定融合內容的句柄。 Compstui.dll 複製句柄,並將它附加至其內部結構,讓呼叫端不一定要保留句柄。 Compstui.dll 刪除 Compstui.dll 句柄時釋放傳入的內容句柄。
lParam2:未使用,必須是零
傳回值 (CPSFUNC_SET_FUSION_CONTEXT)
如果作業成功, ComPropSheet 函式會傳回大於零的值。 否則, ComPropSheet 會傳回小於或等於零的值。 如需錯誤的相關信息,請使用 GetLastError 函 式。
CPSFUNC_SET_HSTARTPAGE
CPSFUNC_SET_HSTARTPAGE函式程式代碼會使 ComPropSheet 函式將指定的屬性表頁面標示為相關聯屬性表的頂端頁面。 如果目前正在顯示屬性表,指定的頁面就會變成使用中頁面。
參數 (CPSFUNC_SET_HSTARTPAGE)
hComPropSheet:群組父句柄
函式:呼叫者會在呼叫 ComPropSheet 時,將此函式程式碼參數設定為CPSFUNC_SET_HSTARTPAGE,將指定的屬性表頁面標示為相關聯屬性表的頂端頁面
lParam1:呼叫端提供的 CPSUI 頁面句柄,先前由呼叫 ComPropSheet 與下列其中一個函式程式代碼取得:
CPSFUNC_ADD_HPROPSHEETPAGE
CPSFUNC_ADD_PCOMPROPSHEETUI
CPSFUNC_ADD_PFNPROPSHEETUI
CPSFUNC_ADD_PROPSHEETPAGE
CPSFUNC_INSERT_PSUIPAGE
如果句柄代表屬於 hComPropSheet 所指定群組的單一頁面,CPSUI 會將此頁面設為頂端頁面。
如果句柄代表群組父句柄 (看到 CPSFUNC_INSERT_PSUIPAGE) , 則 lParam2 會將以零起始的索引表示到群組的頁面,而索引所代表的頁面會變成頂端頁面。
lParam2:如果 lParam1 代表群組父句柄,則這個呼叫端提供的值是群組頁面中以零起始的索引。 如果 lParam1 代表屬於 hComPropSheet 所指定群組的單一頁面,則不會使用此參數。 如果使用 CPSFUNC_ADD_PCOMPROPSHEETUI 函式程式代碼取得 lParam1 指定的句柄,而且相關聯的 COMPROPSHEETUI 結構的 pDlgPage 成員設定為 CPSUI_PDLGPAGE_DOCPROP,則可以為 lParam2 指定下列其中一個值:
SSP_STDPAGE1 - 將 [版面配置] 頁面設為頂端頁面。
SSP_STDPAGE2 - 將紙張/品質頁面設為頂端頁面。
SSP_TVPAGE - 將進階頁面設為頂端頁面。
傳回值 (CPSFUNC_SET_HSTARTPAGE)
如果作業成功, ComPropSheet 函式會傳回為 lParam1 指定的值;否則會傳回零。
CPSFUNC_SET_PSUIPAGE_ICON
CPSFUNC_SET_PSUIPAGE_ICON函式程式代碼會使 ComPropSheet 函式新增、取代或移除指派給屬性表頁面索引標籤的圖示。
如果 lParam2 包含圖示句柄,而且目前顯示 lParam1 所指定的頁面,CPSUI 會將圖示新增至指定的頁面索引標籤。如果圖示已指派給頁面,舊圖示會取代為新的圖示。 如果 lParam2 為零,則會移除) 存在 (目前的圖示。
針對以 CPSFUNC_SET_PSUIPAGE_ICON 函式程式代碼指定的所有圖示,CPSUI 會將影像大小設定為16 x 16 圖元。
應該藉由呼叫 LoadImage來取得圖示句柄。
參數 (CPSFUNC_SET_PSUIPAGE_ICON)
hComPropSheet:群組父句柄
函式:呼叫者會在呼叫 ComPropSheet 以新增、取代或移除指派給屬性表索引標籤的圖示時,將此函式程式代碼參數設定為CPSFUNC_SET_PSUIPAGE_ICON
lParam1:呼叫端提供的 CPSUI 頁面句柄,先前由呼叫 ComPropSheet 與下列其中一個函式程式代碼取得:
CPSFUNC_ADD_HPROPSHEETPAGE
CPSFUNC_ADD_PROPSHEETPAGE
CPSFUNC_INSERT_PSUIPAGE (,並將 INSERTPSUIPAGE_INFO 結構的 Type 成員設定為 PSUIPAGEINSERT_HPROPSHEETPAGE 或 PSUIPAGEINSERT_PROPSHEETPAGE)
lParam2:呼叫端提供的圖示句柄。 您可以將此參數設定為零,以移除目前的圖示
傳回值 (CPSFUNC_SET_PSUIPAGE_ICON)
如果作業成功, ComPropSheet 函式會傳回 1。 如果發生錯誤,或目前未顯示指定的頁面,則函式會傳回零。
CPSFUNC_SET_PSUIPAGE_TITLE
CPSFUNC_SET_PSUIPAGE_TITLE函式程式代碼會使 ComPropSheet 函式設定屬性表頁面的索引標籤題。
參數 (CPSFUNC_SET_PSUIPAGE_TITLE)
hComPropSheet:群組父句柄
函式:呼叫者會在呼叫 ComPropSheet 時,將此函式程式碼參數設定為CPSFUNC_SET_PSUIPAGE_TITLE,以設定屬性表頁面的索引卷標標題
lParam1:呼叫端提供的 CPSUI 頁面句柄,先前由呼叫 ComPropSheet 與下列其中一個函式程式代碼取得:
CPSFUNC_ADD_HPROPSHEETPAGE
CPSFUNC_ADD_PROPSHEETPAGE
CPSFUNC_INSERT_PSUIPAGE (,並將 INSERTPSUIPAGE_INFO 結構的 Type 成員設定為 PSUIPAGEINSERT_HPROPSHEETPAGE 或 PSUIPAGEINSERT_PROPSHEETPAGE) 。
lParam2:呼叫端提供的指標,指向指定新標題的 NULL 終止字串
傳回值 (CPSFUNC_SET_PSUIPAGE_TITLE)
如果作業成功, ComPropSheet 函式會傳回 1。 如果發生錯誤,或目前未顯示指定的頁面,則函式會傳回零。
CPSFUNC_SET_RESULT
CPSFUNC_SET_RESULT函式程式代碼會使 ComPropSheet 函式將指定的結果值傳遞至與指定頁面及其父系相關聯的所有 PFNPROPSHEETUI 型別函式。
如需如何設定結果值的詳細資訊,請參閱 SETRESULT_INFO 結構的描述。
下列注意事項適用於具有自定義UI屬性表的Unidrv或 Pscript5型 IHV UI 外掛程式,以及屬性表中所做的使用者設定應該是持續性的。 當外掛程式呼叫 ComPropSheet 函式並將 Function 參數設定為 CPSFUNC_SET_RESULT 時,外掛程式必須將 lParam2 參數設定為 CPSUI_OK。
參數 (CPSFUNC_SET_RESULT)
hComPropSheet:群組父句柄
函式:呼叫者會在呼叫 ComPropSheet 時,將此函式程式碼參數設定為CPSFUNC_SET_RESULT,以將指定的結果值傳遞至與指定頁面及其父系相關聯的所有 PFNPROPSHEETUI 型別函式。
lParam1:呼叫端提供的 CPSUI 句柄給傳遞結果值的頁面。 如果 lParam1 為 NULL,CPSUI 會使用 hComPropSheet 所指定的值。
lParam2:呼叫端提供的 32 位 DWORD 結果值。
傳回值 (CPSFUNC_SET_RESULT)
如果作業成功, ComPropSheet 函式會傳回呼叫的 PFNPROPSHEETUI 型別函式數目。 如果為 lParam1 指定的句柄無效,函式會傳回 -1。
規格需求
需求 | 值 |
---|---|
目標平台 | 桌面 |
標頭 | compstui.h (包含 Compstui.h) |