PFNPROPSHEETCALLBACK 回呼函式 (prsht.h)

系統在建立和初始化屬性表時呼叫的應用程式定義回呼函式。

語法

PFNPROPSHEETCALLBACK Pfnpropsheetcallback;

int Pfnpropsheetcallback(
  HWND unnamedParam1,
  UINT unnamedParam2,
  LPARAM unnamedParam3
)
{...}

參數

unnamedParam1

類型: HWND

屬性表的句柄。 此參數通常稱為 hWnd

unnamedParam2

類型: UINT

正在接收的訊息。 此參數通常稱為 uMsg

此參數是下列其中一個值。

意義
PSCB_INITIALIZED (1)
表示正在初始化屬性表。 此訊息的 lParam (unnamedParam3) 值為零。
PSCB_PRECREATE (2)
表示即將建立屬性表。 hWnd (unnamedParam1) 參數為 NULL,而 lParam (unnamedParam3) 參數是記憶體中對話框範本的位址。 此範本的格式為 DLGTEMPLATEDLGTEMPLATEEX 結構,後面接著一或多個 DLGITEMTEMPLATE 結構。 如果您使用 [ (精靈] 樣式 PSH_AEROWIZARD) ,則不適用此訊息。
PSCB_BUTTONPRESSED (3)

6.0 版和更新版本。 表示使用者按下屬性表對話框中的按鈕。 若要啟用此功能,請在 PROPSHEETHEADER.dwFlags 中指定PSH_USECALLBACK,並在 PROPSHEETHEADER.pfnCallback 中指定此回呼函式的名稱。 lParam (Arg3) 值為下列其中一項。 請注意,當您使用 (精靈樣式 (PSH_AEROWIZARD) 時,只有PSBTN_CANCEL有效。

已按下按鈕 lParam 值
確定 PSBTN_OK
取消 PSBTN_CANCEL
套用 PSBTN_APPLYNOW
關閉 PSBTN_FINISH

請注意,Comctl32.dll 版本 6 和更新版本不可轉散發。 若要使用這些版本的 Comctl32.dll,請在指令清單中指定特定版本。 如需指令清單的詳細資訊,請參閱 啟用可視化樣式

unnamedParam3

類型: LPARAM

有關訊息的其他資訊。 此參數通常稱為 lParam

此值的意義取決於 uMsg (unnamedParam2) 參數:

  • 如果 uMsg 是PSCB_INITIALIZED或PSCB_BUTTONPRESSED,則此參數的值會是零。

  • 如果 uMsg 是PSCB_PRECREATE,則此參數會是描述屬性表對話方塊之 DLGTEMPLATE 或 DLGTEMPLATEEX 結構的指標。 測試 結構的簽章,以判斷類型。 如果簽章等於0xFFFF則結構是擴充對話範本,否則結構為標準對話範本。 下列範例示範如何進行這項操作。

    if (uMsg == PSCB_PRECREATE) 
    {
         if (lParam)
         {
              DLGTEMPLATE *pDlgTemplate;
              DLGTEMPLATEEX *pDlgTemplateEx;
    
              pDlgTemplateEx = (DLGTEMPLATEEX *)lParam;  
              if (pDlgTemplateEx->signature == 0xFFFF)
              {
                   // pDlgTemplateEx points to an extended  
                   // dialog template structure.
              }
              else
              {
                   // This is a standard dialog template
                   //  structure.
                   pDlgTemplate = (DLGTEMPLATE *)lParam;
              }
         }    
    }
    

傳回值

類型: int

傳回零。

備註

若要啟用 PropSheetProc 回呼函式,請在呼叫 PropertySheet 函式來建立屬性表時,使用 PROPSHEETHEADER 結構。 使用 pfnCallback 成員來指定回呼函式的位址,並在 dwFlags 成員中設定PSP_USECALLBACK旗標。

PropSheetProc 是應用程式定義函數名稱的佔位元。 PFNPROPSHEETCALLBACK 類型是 PropSheetProc 回呼函式的位址。

規格需求

需求
最低支援的用戶端 Windows Vista [僅限傳統型應用程式]
最低支援的伺服器 Windows Server 2003 [僅限桌面應用程式]
目標平台 Windows
標頭 prsht.h