Структура 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

Передача HIGHCONTRASTSTRUCTURE в вызовах SystemParametersInfoW может привести к изменению темы, даже если тема не изменяется. Например, сообщение WM_THEMECHANGED отправляется в Windows, даже если единственным изменением является HCF_HOTKEYSOUND.

Чтобы избежать этого, включите флаг HCF_OPTION_NOTHEMECHANGE в вызов SystemParametersInfo.

Примечание

Флаг HCF_OPTION_NOTHEMECHANGE не следует использовать при переключите режим высокой контрастности (HCF_HIGHCONTRASTON).

HCF_OPTION_NOTHEMECHANGE
0x00001000

Передача HIGHCONTRASTSTRUCTURE в вызовах SystemParametersInfoW может привести к изменению темы, даже если тема не изменяется. Например, сообщение WM_THEMECHANGED отправляется в Windows, даже если единственным изменением является HCF_HOTKEYSOUND.

Чтобы избежать этого, включите флаг HCF_OPTION_NOTHEMECHANGE в вызов SystemParametersInfo.

Примечание

Флаг HCF_OPTION_NOTHEMECHANGE не следует использовать при переключите режим высокой контрастности (HCF_HIGHCONTRASTON).

lpszDefaultScheme

Тип: LPTSTR

Указывает на строку, содержащую имя цветовой схемы, для которую будет задана схема по умолчанию. Система выделяет этот буфер и освобождает его с помощью LocalFree.

Комментарии

Приложение использует эту структуру при вызовефункции SystemParametersInfoW со значением SPI_GETHIGHCONTRAST или SPI_SETHIGHCONTRAST . При использовании SPI_GETHIGHCONTRAST приложение должно указать член cbSize структуры HIGHCONTRAST ; Функция SystemParametersInfo заполняет остальные элементы. При использовании значения SPI_SETHIGHCONTRAST приложение должно указать все элементы структуры.

Примечание

Заголовок winuser.h определяет HIGHCONTRAST как псевдоним, который автоматически выбирает версию ANSI или Юникод этой функции на основе определения константы препроцессора ЮНИКОД. Сочетание использования псевдонима, не зависящий от кодировки, с кодом, не зависящим от кодировки, может привести к несоответствиям, которые приводят к ошибкам компиляции или среды выполнения. Дополнительные сведения см. в разделе Соглашения для прототипов функций.

Требования

Требование Значение
Минимальная версия клиента Windows 2000 Professional [только классические приложения]
Минимальная версия сервера Windows 2000 Server [только классические приложения]
Верхняя часть winuser.h (включая Windows.h)

См. также раздел

Функция SystemParametersInfoW, структура HIGHCONTRASTA, структуры специальных возможностей, SystemParametersInfo