DLGPAGE 结构 (compstui.h)

DLGPAGE 结构用于将属性表页指定为 CPSUI 的 ComPropSheet 函数。 该结构的地址包含在 COMPROPSHEETUI 结构中,所有成员值都由 ComPropSheet 调用方提供。

语法

typedef struct _DLGPAGE {
  WORD      cbSize;
  WORD      Flags;
  DLGPROC   DlgProc;
  LPTSTR    pTabName;
  ULONG_PTR IconID;
  union {
    WORD   DlgTemplateID;
    HANDLE hDlgTemplate;
  } DUMMYUNIONNAME;
} DLGPAGE, *PDLGPAGE;

成员

cbSize

DLGPAGE 结构的调用方提供的大小(以字节为单位)。

Flags

调用方提供的位标志,如下表所述。

定义
DPF_ICONID_AS_HICON 如果已设置,IconID 包含图标句柄。 如果未设置,IconID 包含图标资源标识符。
DPF_USE_HDLGTEMPLATE 如果已设置,hDlgTemplate 包含模板句柄。 如果未设置,DlgTemplateID 包含模板资源标识符。

可选,调用方提供的 DLGPROC类型指针,用于处理系统在发生用户事件时发送的消息。 如果 NULL,CPSUI 会提供一个对话框过程。 有关详细信息,请参阅下面的“备注”部分。

DlgProc

DlgProc定义 DLGPROC 成员。

pTabName

调用方提供的指向要显示在页面选项卡上的 NULL 终止字符串的指针。

IconID

调用方提供,可以是下列项之一:

  • 图标资源标识符。 这可以是应用程序定义的,也可以是 CPSUI 提供的、IDI_CPSUI前缀的图标资源标识符之一。

  • 图标句柄。 如果指定了句柄,则必须在 标志 成员中设置DPF_ICONID_AS_HICON。

指定的图标显示在页面选项卡上。如果此值为零,则不显示图标。

DUMMYUNIONNAME

定义 DUMMYUNIONNAME 联合。

DUMMYUNIONNAME.DlgTemplateID

对话框模板的调用方提供的资源标识符。 这可以引用应用程序提供的 DIALOG 资源,也可以是以下 CPSUI 提供的标识符之一(在 compstui.h 中定义):

标识符 页面类型
DP_STD_DOCPROPPAGE1 非树视图页面,用于打印文档的 版式 页。
DP_STD_DOCPROPPAGE2 非树视图页面,用于打印文档的 纸张/质量 页。
DP_STD_TREEVIEWPAGE 泛型树视图页。

CPSUI 提供的标识符是指 CPSUI 选项类型的模板。 这些模板的页面大小为 252 到 216 个对话框单位。 有关详细信息,请参阅 CPSUI-Supplied 页面和模板

如果在 标志中设置DPF_USE_HDLGTEMPLATE,则不会使用此成员。

DUMMYUNIONNAME.hDlgTemplate

DLGTEMPLATE 结构的调用方提供的句柄。

仅在 标志中设置DPF_USE_HDLGTEMPLATE时才使用。

言论

CPSUI 通过分配 PROPSHEETPAGE 结构并将其传递给 createPropertySheetPage 来创建属性表页。 如果调用方在 DlgProc中指定了指向对话框过程的 DLGPROC 类型的指针,则该过程用于处理页面的窗口消息。 如果 DlgProc NULL,则使用 CPSUI 自己的对话框过程。

当 DlgProc 指向的对话框过程通过消息值 WM_INITDIALOG调用时,它将接收作为输入的 PROPSHEETPAGE 结构,并且还会接收 PSPINFO 结构。

如果调用方提供的对话框过程处理消息,它应返回非零值。 如果函数不处理它应返回零的消息,这会导致 CPSUI 处理消息。

要求

要求 价值
标头 compstui.h (包括 Compstui.h)