共用方式為


_CPSUICALLBACK回呼函式 (compstui.h)

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

語法

_CPSUICALLBACK Cpsuicallback;

LONG Cpsuicallback(
  PCPSUICBPARAM pCPSUICBParam
)
{...}

參數

pCPSUICBParam

CPSUI 提供的指標 CPSUICBPARAM 結構。

傳回值

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

傳回碼 描述
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旗標,表示 旗標pData 相關 OPTTYPEOPTPARAM 結構的成員已變更。

言論

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

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

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

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

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

要求

要求 價值
目標平臺 桌面
標頭 compstui.h (包括 Compstui.h)