_CPSUICALLBACK回呼函式 (compstui.h)

CPSUI 應用程式會使用_CPSUICALLBACK函式類型, (包括印表機介面 DLL) ,用來定義用來作為 CPSUI 訊息處理程式的回呼函式。

語法

_CPSUICALLBACK Cpsuicallback;

LONG Cpsuicallback(
  PCPSUICBPARAM pCPSUICBParam
)
{...}

參數

pCPSUICBParam

CPSUI 提供的 CPSUICBPARAM 結構指標。

傳回值

_CPSUICALLBACK型別回呼函式必須傳回下表所列的其中一個值。 每個值都表示 CPSUI 應該執行的動作。

傳回碼 Description
CPSUICB_ACTION_ITEMS_APPLIED CPSUICBPARAM 結構的 Reason 成員已設定為 CPSUICB_REASON_APPLYNOW,而且回呼函式已成功處理目前的選項值。
CPSUICB_ACTION_NO_APPLY_EXIT CPSUICBPARAM 結構的 Reason 成員已設定為CPSUICB_REASON_APPLYNOW,但回呼函式偵測到無效或不相容的選項值。 回呼函式必須顯示對話方塊,告知用戶問題。
CPSUICB_ACTION_NONE 不需要 CPSUI 採取任何動作。
CPSUICB_ACTION_OPTIF_CHANGED 回呼函式已在 OPTITEM 結構中設定OPTIF_CHANGED旗標,以指出選取的選項已變更,或另一個OPTIF前置旗標已變更。
CPSUICB_ACTION_REINIT_ITEMS 回呼函式已在OPTITEM結構中設定OPTIF_CHANGED旗標,指出相關聯OPTTYPEOPTPARAM結構的 FlagspData 成員已變更。

備註

使用 _CPSUICALLBACK 函式類型指定的回呼函式是由使用 CPSUI 來管理屬性表頁面的應用程式所提供。 如果其中一個回呼函式與屬性表頁面相關聯,CPSUI 會在用戶活動 (呼叫它,例如變更頁面的控制焦點、修改選項值,或偵測到 [ 確定 ]) 。

_CPSUICALLBACK類型的回呼函式會藉由在 COMPROPSHEETUI 結構中包含其位址,在函式程式碼CPSFUNC_ADD_PCOMPROPSHEETUI時傳遞至 CPSUI 的 ComPropSheet 函式,以指派給屬性表頁面。

此外,回呼函式也可透過使用 EXTPUSH 結構,指派給擴充的按鈕。

呼叫其中一個回呼函式時,它會接收 CPSUICBPARAM 結構的指標。 這個結構描述頁面的目前選項設定,並指出導致呼叫函式的使用者事件。 回呼函式負責驗證和處理設定。 如果設定 (或) 設定的組合無效,它應該會顯示對話方塊。 函式的傳回值會向CPSUI指出頁面是否需要重新顯示或重新初始化。

如果 DLGPAGE 結構的 DlgProc 成員指定應用程式提供的對話框程式,就無法使用此函數類型指定的回呼函式。 這是因為從 CPSUI 的對話框程式呼叫_CPSUICALLBACK型別回呼,如果應用程式提供自己的程式,則不會使用此回呼。

規格需求

需求
目標平台 桌面
標頭 compstui.h (包括 Compstui.h)