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) |