PFNPROPSHEETCALLBACK 回呼函式 (prsht.h)
系統在建立和初始化屬性表時呼叫的應用程式定義回呼函式。
語法
PFNPROPSHEETCALLBACK Pfnpropsheetcallback;
int Pfnpropsheetcallback(
HWND unnamedParam1,
UINT unnamedParam2,
LPARAM unnamedParam3
)
{...}
參數
unnamedParam1
類型: HWND
屬性表的句柄。 此參數通常稱為 hWnd。
unnamedParam2
類型: UINT
正在接收的訊息。 此參數通常稱為 uMsg。
此參數是下列其中一個值。
值 | 意義 | ||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
|
表示正在初始化屬性表。 此訊息的 lParam (unnamedParam3) 值為零。 | ||||||||||
|
表示即將建立屬性表。 hWnd (unnamedParam1) 參數為 NULL,而 lParam (unnamedParam3) 參數是記憶體中對話框範本的位址。 此範本的格式為 DLGTEMPLATE 或 DLGTEMPLATEEX 結構,後面接著一或多個 DLGITEMTEMPLATE 結構。 如果您使用 [ (精靈] 樣式 PSH_AEROWIZARD) ,則不適用此訊息。 | ||||||||||
|
6.0 版和更新版本。 表示使用者按下屬性表對話框中的按鈕。 若要啟用此功能,請在 PROPSHEETHEADER.dwFlags 中指定PSH_USECALLBACK,並在 PROPSHEETHEADER.pfnCallback 中指定此回呼函式的名稱。 lParam (Arg3) 值為下列其中一項。 請注意,當您使用 (精靈樣式 (PSH_AEROWIZARD) 時,只有PSBTN_CANCEL有效。
請注意,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 |