共用方式為


CPSUICBPARAM 結構 (compstui.h)

CPSUICBPARAM 結構會作為輸入參數來 _CPSUICALLBACK型別回呼函式。

語法

typedef struct _CPSUICBPARAM {
  WORD      cbSize;
  WORD      Reason;
  HWND      hDlg;
  POPTITEM  pOptItem;
  WORD      cOptItem;
  WORD      Flags;
  POPTITEM  pCurItem;
  union {
    LONG   OldSel;
    LPTSTR pOldSel;
  } DUMMYUNIONNAME;
  ULONG_PTR UserData;
  ULONG_PTR Result;
} CPSUICBPARAM, *PCPSUICBPARAM;

成員

cbSize

CPSUI 提供的 CPSUICBPARAM 結構大小,以位元組為單位。

Reason

CPSUI 提供的值,指出呼叫回呼函式的原因。 這可以是下列其中一個值:

CPSUICB_REASON_ABOUT

使用者已按下頁面的 [關於] 按鈕 ,而應用程式先前在 COMPROPSHEETUI 結構中設定CPSUIF_ABOUT_CALLBACK旗標。 CPSUI 會將 pCurItem 設定為 pOptItem中包含的值,並將 pOldSel 設定為指向 COMPROPSHEETUI 結構。

CPSUICB_REASON_APPLYNOW

使用者已按下頁面 [套用] 或 [確定] 按鈕,而 CPSUI 已收到 PSN_APPLY 通知訊息。 CPSUI 會將 pCurItem 設定為指向 pOptItem 點 選項。 它也會將 oldSel 設定為減去一個,表示現在應該套用所有有效的已變更選項值。

CPSUICB_REASON_DLGPROC

pCurItem 所識別的選項是一個按鈕(TVOT_PUSHBUTTON 選項類型),且使用者已按下按鈕。

按鈕選項的 OPTPARAM Style 字段會設定為 [PUSHBUTTON_TYPE_DLGPROC]。

CPSUICB_REASON_ECB_CHANGED

pCurItem 所識別的選項是延伸複選框,而且使用者已變更方塊的狀態。

CPSUICB_REASON_EXTPUSH

pCurItem 所識別的選項是延伸的按鈕,且使用者已按鍵。

CPSUICB_REASON_ITEMS_REVERTED

用戶單擊頁面的 [復原] 按鈕,而 CPSUI 已將所有選取專案還原為其原始值。

CPSUICB_REASON_KILLACTIVE

屬性表頁面即將失去啟用,而 CPSUI 已收到 PSN_KILLACTIVE 通知訊息。 CPSUI 會將 pCurItem 設定為 pOptItem中包含的值,並將 pOldSel 設定為指向 COMPROPSHEETUI 結構。

CPSUICB_REASON_OPTITEM_SETFOCUS

pCurItem 所識別的選項已收到輸入焦點。

CPSUICB_REASON_PUSHBUTTON

pCurItem 所識別的選項是一個按鈕(TVOT_PUSHBUTTON 選項類型),且使用者已按下按鈕。

按鈕專案的 OPTPARAMStyle 欄位會設定為 PUSHBUTTON_TYPE_CALLBACK。

CPSUICB_REASON_SEL_CHANGED

用戶已 pCurItem所指向的選項變更選取的值。

CPSUICB_REASON_SETACTIVE

屬性表頁面即將變成作用中,而 CPSUI 已收到 PSN_SETACTIVE 通知訊息。 CPSUI 會將 pCurItem 設定為 pOptItem中包含的值,並將 pOldSel 設定為指向 COMPROPSHEETUI 結構。

hDlg

CPSUI 提供給目前使用中對話框的句柄。

pOptItem

CPSUI 提供的指標,指向 OPTITEM 結構的陣列。 這與應用程式先前在 COMPROPSHEETUI 結構中提供的指標相同。

cOptItem

由 pOptItem 所指向之陣列中 CPSUI 提供的 OPTITEM 結構數目。 這個數位與先前在 COMPROPSHEETUI 結構中提供的應用程式相同。

Flags

CPSUI 提供的旗標。 這是應用程式先前在 COMPROPSHEETUI 結構中提供的一組旗標。

pCurItem

由 pOptItem 所指向之 OPTITEM 陣列成員的 CPSUI 提供指標。 這個陣列成員代表 「current」 選項,這是呼叫回呼函式的選項。

DUMMYUNIONNAME

定義 DUMMYUNIONNAME 等位。

DUMMYUNIONNAME.OldSel

如果 Reason 成員包含 CPSUICB_REASON_SEL_CHANGED,CPSUI 會將這個聯集設定為 OldSelpOldSel 成員 OPTITEM 結構 pCurItem所指向的 成員。

針對所有其他 Reason 值,應該忽略此聯集的內容。

DUMMYUNIONNAME.pOldSel

如果 Reason 成員包含 CPSUICB_REASON_SEL_CHANGED,CPSUI 會將這個聯集設定為 OldSelpOldSel 成員 OPTITEM 結構 pCurItem所指向的 成員。

針對所有其他 Reason 值,應該忽略此聯集的內容。

UserData

CPSUI 提供的用戶數據。 這個值與先前在 COMPROPSHEETUI 結構中提供的應用程式相同。

Result

_CPSUICALLBACK型別回呼函式提供的結果值。 根據預設,CPSUI 會將此值設定為CPSUI_OK。 回呼函式傳回之後,CPSUI 會使用函式程式 CPSFUNC_SET_RESULT代碼呼叫其 ComPropSheet 函式,並提供 Reason 成員內容作為結果值。

只有當 Reason 成員CPSUICB_REASON_APPLYNOW且回呼函式不會傳回CPSUI_ACTION_NO_APPLY_EXIT時,才會使用此成員。

要求

要求 價值
標頭 compstui.h (包括 Compstui.h)