PROPSHEETHEADERA_V2 结构 (prsht.h)

定义属性表的框架和页。

注意

此结构不应在代码中直接使用。 请改用 PROPSHEETHEADER 结构。

语法

typedef struct _PROPSHEETHEADERA_V2 {
  union {
    HBITMAP hbmWatermark;
    LPCSTR  pszbmWatermark;
  } DUMMYUNIONNAME4;
  HPALETTE hplWatermark;
  union {
    HBITMAP hbmHeader;
    LPCSTR  pszbmHeader;
  } DUMMYUNIONNAME5;
} PROPSHEETHEADERA_V2, *LPPROPSHEETHEADERA_V2;

成员

DUMMYUNIONNAME4

DUMMYUNIONNAME4.hbmWatermark

类型: HBITMAP

版本 5.80 或更高版本。 水印位图的句柄。 如果 dwFlags 成员不包括PSH_USEHBMWATERMARK,则忽略此成员。

DUMMYUNIONNAME4.pszbmWatermark

类型: LPCTSTR

版本 5.80 或更高版本。 要用作水印的位图资源。 此成员可以指定位图资源的标识符或指定位图资源名称的字符串的地址。 如果 dwFlags 成员包含PSH_USEHBMWATERMARK,则忽略此成员。

hplWatermark

类型: HPALETTE

版本 5.80 或更高版本。 HPALETTE 结构,用于绘制水印位图和/或标头位图。 如果 dwFlags 成员不包含PSH_USEHPLWATERMARK,则忽略此成员。

DUMMYUNIONNAME5

DUMMYUNIONNAME5.hbmHeader

类型: HBITMAP

版本 5.80 或更高版本。 标头位图的句柄。 如果 dwFlags 成员不包括PSH_USEHBMHEADER,则忽略此成员。

DUMMYUNIONNAME5.pszbmHeader

类型: LPCSTR

版本 5.80 或更高版本。 要用作标头的位图资源。 此成员可以指定位图资源的标识符或指定位图资源名称的字符串的地址。 如果 dwFlags 成员包含PSH_USEHBMHEADER,则忽略此成员。

注解

如果用户选择放大对话框的“大字体”等设置,则开始和结束页上绘制的水印也会放大。 原始位图的大小和位置将保持不变。 将使用位图左上角的像素颜色填充其他区域。

请注意,此结构的多个成员仅支持 Comctl32.dll 版本 4.71 及更高版本。 可以通过在标头中包含以下其中一个来启用这些成员。

#define _WIN32_IE 0x0400 // For version 4.71

#define _WIN32_IE 0x0500 // For version 5.80

但是,必须用其大小初始化 结构。 如果使用当前定义的结构的大小,则应用程序可能不会与早期版本的 Comctl32.dll 一起运行,这需要更小的结构。 这包括未安装 Internet Explorer 4.0 或更高版本的 Windows 95 或 Microsoft Windows NT 4.0 的所有系统。 可以通过定义相应的版本号,在 4.71 之前的 Comctl32.dll 版本上运行应用程序。 但是,如果应用程序还需要在具有较新版本的系统上运行,这可能会导致问题。

通过使用当前头文件并适当设置 PROPSHEETHEADER 结构的大小,可以与所有 Comctl32.dll 版本保持兼容。 在初始化 结构之前,请使用 DllGetVersion 函数确定系统上安装了哪个 Comctl32.dll 版本。 如果版本为 4.71 或更高版本,请使用

psh.dwSize = sizeof(PROPSHEETHEADER);

初始化 dwSize 成员。 对于早期版本,4.71 之前结构的大小由 PROPSHEETHEADER_V1_SIZE 常量提供。 用途

psh.dwSize = PROPSHEETHEADER_V1_SIZE;

PSH_WIZARD、PSH_WIZARD97和PSH_WIZARD_LITE样式相互不兼容。 只应设置其中一个样式标志。 PSH_AEROWIZARD应与 PSH_WIZARD 结合使用。

要求

   
最低受支持的客户端 Windows Vista [仅限桌面应用]
最低受支持的服务器 Windows Server 2003 [仅限桌面应用]
标头 prsht.h