_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 相關 OPTTYPE 或 OPTPARAM 結構的成員已變更。 |
言論
使用 _CPSUICALLBACK 函式類型指定的回呼函式是由使用 CPSUI 來管理屬性表頁面的應用程式所提供。 如果其中一個回呼函式與屬性表頁面相關聯,則 CPSUI 會在用戶活動時呼叫它(例如變更頁面的控制焦點、修改選項值,或按兩下 [OK] 時呼叫它。
_CPSUICALLBACK型別回呼函式會將其位址包含在 COMPROPSHEETUI 結構中,以指派給屬性表頁面,當函式程式代碼 CPSFUNC_ADD_PCOMPROPSHEETUI時,函式會傳遞至 CPSUI 的 ComPropSheet 函式。
此外,透過使用 EXTPUSH 結構,可以將回呼函式指派給擴充的按鈕。
呼叫其中一個回呼函式時,它會接收 CPSUICBPARAM 結構的指標。 此結構描述頁面的目前選項設定,並指出導致呼叫函式的使用者事件。 回呼函式負責驗證和處理設定。 如果設定(或設定的組合)無效,它應該會顯示對話方塊。 函式的傳回值會向CPSUI指出頁面是否需要重新顯示或重新初始化。
如果 DlgProcDLGPAGE 結構指定應用程式提供的對話框程式,就無法使用此函式類型的回呼函式。 這是因為_CPSUICALLBACK型別回呼是從 CPSUI 的對話框程式呼叫的,如果應用程式提供自己的程式,則不會使用此回呼。
要求
要求 | 價值 |
---|---|
目標平臺 | 桌面 |
標頭 | compstui.h (包括 Compstui.h) |