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前缀图标资源标识符之一。
图标句柄。 如果指定了句柄,则必须在 Flags 成员中设置DPF_ICONID_AS_HICON。
指定的图标显示在页面选项卡上。如果此值为零,则不显示图标。
DUMMYUNIONNAME
定义 DUMMYUNIONNAME 联合。
DUMMYUNIONNAME.DlgTemplateID
对话框模板的调用方提供的资源标识符。 这可以引用应用程序提供的 DIALOG 资源,也可以是 compstui.h) 中定义的以下 CPSUI 提供的标识符之一 (:
标识符 | 页面类型 |
---|---|
DP_STD_DOCPROPPAGE1 | 非树视图页面,用于打印文档的 布局 页。 |
DP_STD_DOCPROPPAGE2 | 非树视图页,用于打印文档的 纸张/质量 页。 |
DP_STD_TREEVIEWPAGE | 泛型树视图页。 |
CPSUI 提供的标识符是指可以显示 CPSUI 选项类型的模板。 这些模板的页面大小为 252 乘以 216 个对话框单位。 有关详细信息,请参阅 CPSUI 提供的页和模板。
如果在 Flags 中设置了DPF_USE_HDLGTEMPLATE,则不使用此成员。
DUMMYUNIONNAME.hDlgTemplate
DLGTEMPLATE 结构的调用方提供的句柄。
仅在 “标志”中设置了DPF_USE_HDLGTEMPLATE时才使用。
注解
CPSUI 通过分配 PROPSHEETPAGE 结构并将其传递给 CreatePropertySheetPage 来创建属性表页。 如果调用方在 DlgProc 中指定了指向对话框过程的 DLGPROC 类型指针,则该过程用于处理页面的窗口消息。 如果 DlgProc 为 NULL,则使用 CPSUI 自己的对话框过程。
当使用消息值 WM_INITDIALOG 调用 DlgProc 指向的对话框过程时,它将接收 PROPSHEETPAGE 结构作为输入,并且还接收 PSPINFO 结构。
如果调用方提供的对话框过程处理消息,则应返回非零值。 如果该函数不处理消息,则它应返回零,这会导致 CPSUI 处理消息。
要求
要求 | 值 |
---|---|
Header | compstui.h (包括 Compstui.h) |