PFNPROPSHEETUI 回调函数 (compstui.h)
PFNPROPSHEETUI 函数类型由 CPSUI 应用程序(包括打印机接口 DLL)用于定义 页创建回调,该回调指定用于创建的属性表页。
语法
PFNPROPSHEETUI Pfnpropsheetui;
LONG Pfnpropsheetui(
PPROPSHEETUI_INFO pPSUIInfo,
LPARAM lParam
)
{...}
参数
pPSUIInfo
CPSUI 提供的指向 PROPSHEETUI_INFO 结构的指针。
lParam
CPSUI 提供的整数值,该值依赖于 PROPSHEETUI_INFO 结构 原因 成员的内容。 有效值如下所示:
PROPSHEETUI_REASON_BEFORE_INIT
此值是 Windows 8 的新增功能,它仅提供给传递给 CommonPropertySheetUI的原始 PFNPROPSHEETUI 参数。
PROPSHEETUI_REASON_DESTROY
如果用户选择了属性表的 “确定”或 “取消”按钮,则 lParam 值是非零值。 否则,该值为零。
PROPSHEETUI_REASON_GET_ICON
lParam 值是指向 PROPSHEETUI_GETICON_INFO 结构的指针。
PROPSHEETUI_REASON_GET_INFO_HEADER
lParam 值是指向 PROPSHEETUI_INFO_HEADER 结构的指针。
PROPSHEETUI_REASON_INIT
如果回调函数由 pfnPropSheetUI 参数指定为 CommonPropertySheetUI,lParam 是传递给 commonPropertySheetUI 的lParam 值。
如果使用具有 CPSUI ComPropSheet 函数的 CPSFUNC_ADD_PFNPROPSHEETUI 函数代码指定回调函数,则 lParam 是传递给 ComPropSheet的 lParam2 值。
CPSUI 将 lParam 值复制到函数 PROPSHEETUI_INFO 结构的 lParamInit 成员中。
lParam 值不得驻留在应用程序的堆栈上。
PROPSHEETUI_REASON_SET_RESULT
lParam 值是指向 SETRESULT_INFO 结构的指针。
返回值
如果作成功,该函数应返回一个值(或更大)。 否则,它应返回小于 1 的值。
返回代码 | 描述 |
---|---|
一个或多个。 | 将调用与当前页的父级关联的 PFNPROPSHEETUI 函数。 |
小于 1。 | 不会调用与当前页父级关联的 PFNPROPSHEETUI 函数。 |
言论
使用 PFNPROPSHEETUI 函数类型指定的回调函数由使用 CPSUI 来管理自定义属性表页的应用程序提供。 当应用程序调用 CommonPropertySheetUI 函数时,必须指定一个此类回调函数。 例如,当基于 NT 的作系统打印后台处理程序调用 CPSUI 的 CommonPropertySheetUI 函数以支持其 DocumentProperties 或 PrinterProperties 函数时,后台处理程序指定内部 PFNPROPSHEETUI 类型的回调函数。
应用程序可以通过使用函数代码 CPSFUNC_ADD_PFNPROPSHEETUI调用 CPSUI 的 ComPropSheet 函数来指定其他 PFNPROPSHEETUI 类型的回调函数。 例如,基于 NT 的作系统打印后台处理程序会执行此作,以通知 CPSUI 是否存在打印机接口 DLL 的 DrvDocumentPropertySheets 和 DrvDevicePropertySheets 函数。 同样,Microsoft的 unidrv 和 Pscript 驱动程序使用此技术通知 CPSUI 是否存在 IPrintOemUI::D ocumentPropertySheets 和 IPrintOemUI::D evicePropertySheets 方法 用户界面插件。
每个 PFNPROPSHEETUI 类型的回调函数由 CPSUI 多次调用。 PROPSHEETUI_INFO 结构的 原因 成员规定函数应执行的作,如下所示:
要求
要求 | 价值 |
---|---|
目标平台 | 桌面 |
标头 | compstui.h (包括 Compstui.h) |