_CPSUICALLBACK回调函数 (compstui.h)

CPSUI 应用程序(包括打印机接口 DLL)使用_CPSUICALLBACK函数类型,用于定义用于 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 关联的 OPTTYPEOPTPARAM 结构的成员已更改。

言论

使用 _CPSUICALLBACK 函数类型指定的回调函数由使用 CPSUI 来管理属性表页的应用程序提供。 如果其中一个回调函数与属性表页相关联,则 CPSUI 会在用户活动(例如更改页面的控制焦点、修改选项值或单击 确定)时调用它。

通过将 COMPROPSHEETUI 结构中的地址包含在属性表页中,将_CPSUICALLBACK类型的回调函数分配给属性表页,该结构在函数代码 CPSFUNC_ADD_PCOMPROPSHEETUI时传递给 CPSUI 的 ComPropSheet 函数。

此外,可以通过使用 EXTPUSH 结构将回调函数分配给扩展的推送按钮。

调用其中一个回调函数时,它将接收指向 CPSUICBPARAM 结构的指针。 此结构描述页面的当前选项设置,并指示导致调用函数的用户事件。 回调函数负责验证和处理设置。 如果设置(或设置的组合)无效,它应显示对话框。 函数的返回值向 CPSUI 指示页面是否需要重新显示或重新初始化。

如果 DlgProcDLGPAGE 结构的成员指定应用程序提供的对话框过程,则无法使用使用此函数类型的回调函数。 这是因为_CPSUICALLBACK类型的回调是从 CPSUI 的对话框过程调用的,如果应用程序提供自己的过程,则不会使用这些回调。

要求

要求 价值
目标平台 桌面
标头 compstui.h (包括 Compstui.h)