HIGHCONTRASTW 结构 (winuser.h)
包含有关高对比度辅助功能的信息。此功能设置用户界面的外观方案,以最大程度地提高视觉受损用户的可见性,并建议应用程序遵守此外观方案。
语法
typedef struct tagHIGHCONTRASTW {
UINT cbSize;
DWORD dwFlags;
LPWSTR lpszDefaultScheme;
} HIGHCONTRASTW, *LPHIGHCONTRASTW;
成员
cbSize
类型:UINT
指定此结构的大小(以字节为单位)。
dwFlags
类型:DWORD
指定以下值的组合:
价值 |
意义 |
-
HCF_HIGHCONTRASTON
- 0x00000001
|
高对比度功能已打开。
|
-
HCF_AVAILABLE
- 0x00000002
|
高对比度功能可用。
|
-
HCF_HOTKEYACTIVE
- 0x00000004
|
用户可以通过同时按左 Alt、左 SHIFT 和 PRINT SCREEN 键来打开和关闭高对比度功能。
|
-
HCF_CONFIRMHOTKEY
- 0x00000008
|
使用热键激活高对比度功能时,将显示一个确认对话框。
|
-
HCF_HOTKEYSOUND
- 0x00000010
|
当用户使用热键打开或关闭高对比度功能时,将播放警笛。
|
-
HCF_INDICATOR
- 0x00000020
|
当高对比度功能处于打开时,将显示视觉指示器。 此值当前未使用,将被忽略。
|
-
HCF_HOTKEYAVAILABLE
- 0x00000040
|
可以启用与高对比度功能关联的热键。 应用程序可以检索此值,但无法设置该值。
|
-
HCF_OPTION_NOTHEMECHANGE
- 0x00001000
|
在对 SystemParametersInfoW 的调用中传递 HIGHCONTRASTSTRUCTURE 可能会导致主题更改效果,即使主题未更改也是如此。 例如,即使唯一的更改是HCF_HOTKEYSOUND,WM_THEMECHANGED消息也会发送到 Windows。
若要防止出现这种情况,请在对 SystemParametersInfo 的调用中包含HCF_OPTION_NOTHEMECHANGE标志。
注意
切换高对比度模式时不应使用HCF_OPTION_NOTHEMECHANGE标志(HCF_HIGHCONTRASTON)。
|
-
HCF_OPTION_NOTHEMECHANGE
- 0x00001000
|
在对 SystemParametersInfoW 的调用中传递 HIGHCONTRASTSTRUCTURE 可能会导致主题更改效果,即使主题未更改也是如此。 例如,即使唯一的更改是HCF_HOTKEYSOUND,WM_THEMECHANGED消息也会发送到 Windows。
若要防止出现这种情况,请在对 SystemParametersInfo 的调用中包含HCF_OPTION_NOTHEMECHANGE标志。
注意
切换高对比度模式时不应使用HCF_OPTION_NOTHEMECHANGE标志(HCF_HIGHCONTRASTON)。
|
lpszDefaultScheme
类型:LPTSTR
指向一个字符串,其中包含将设置为默认方案的配色方案的名称。 系统分配此缓冲区,使用 LocalFree 释放该缓冲区。
应用程序使用 SPI_GETHIGHCONTRAST 或 SPI_SETHIGHCONTRAST 值调用 SystemParametersInfoW 函数 时使用此结构。 使用 SPI_GETHIGHCONTRAST时,应用程序必须指定 HIGHCONTRAST 结构的 cbSize 成员;SystemParametersInfo 函数将填充其余成员。 使用 SPI_SETHIGHCONTRAST 值时,应用程序必须指定所有结构成员。
注意
winuser.h 标头将 HIGHCONTRAST 定义为一个别名,该别名根据 UNICODE 预处理器常量的定义自动选择此函数的 ANSI 或 Unicode 版本。 将中性编码别名与不中性编码的代码混合使用可能会导致编译或运行时错误不匹配。 有关详细信息,请参阅函数原型的 约定。
要求
要求 |
价值 |
最低支持的客户端 |
Windows 2000 Professional [仅限桌面应用] |
支持的最低服务器 |
Windows 2000 Server [仅限桌面应用] |
标头 |
winuser.h (包括 Windows.h) |
另请参阅
SystemParametersInfoW 函数、HIGHCONTRASTA 结构、辅助功能结构、SystemParametersInfo