Поделиться через


Заметка схемы значений

С помощью заметки карты значений можно использовать строку сопоставления, чтобы указать, как индекс изображения элемента в представлении списка или представлении в виде дерева соответствует его роли или состоянию. Например, строка сопоставления может указывать на то, что индекс изображения представления списка 0 сопоставляется с ролью проверка box, а индекс изображения 1 — с ролью переключателя.

Вы также можете использовать заметку карты значений, чтобы указать строки, сопоставляемые с числовыми значениями на ползунке.

Когда следует использовать этот метод

Рекомендуется использовать заметку карты значений в следующих ситуациях.

  • Если представление списка или древовидное представление, нарисованное владельцем, включает в себя использование изображений, и вы хотите предоставить пользовательское описание со специальными возможностями (свойство Description ) на основе этого изображения. На следующем рисунке приведен пример.

    иллюстрация меню

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

    Снимок экрана: параметры Internet Explorer для настройки значений проверка полей и переключателей

  • Если ползунок используется для выбора значения, которое можно описать как нечто, отличное от простого целого числа, как показано на следующем снимке экрана, где параметр разрешения экрана описывается строкой.

    Снимок экрана: ползунок, используемый для настройки разрешения экрана

С помощью заметки карты значений строка сопоставления указывает, как индекс изображения списка или дерева соответствует его роли или состоянию. Кроме того, оно может указать, как числовое значение ползунка соответствует строке. Например, строка сопоставления может указывать на то, что индекс изображения представления списка 0 сопоставляется с ролью поля проверка, а индекс изображения 1 — с ролью переключателя. Используйте IAccPropServices::SetHwndPropStr() для присоединения строки сопоставления к элементу управления .

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

Схема значений ползунка

PROPID_ACC_VALUEMAP содержит сопоставление внутренних позиций ползунка с читаемыми строками. Это свойство поддерживается прокси-сервером ползунка Oleacc.dll. Если текущее значение ползунка найдено в сопоставлении значений, соответствующая строка будет предоставлена в качестве значения вместо строки процента по умолчанию (например, "50").

Представление списка и представление в виде дерева

PROPID_ACC_ROLEMAP, PROPID_ACC_STATEMAP и PROPID_ACC_DESCRIPTONMAP обеспечивают сопоставление индексов изображений состояния со значениями ролей и состояний. Эти карты позволяют сопоставлять эти индексы изображений с соответствующими ролями (обычно ROLE_SYSTEM_RADIOBUTTON или ROLE_SYSTEM_CHECKBUTTON) и дополнительными битами состояния (обычно STATE_SYSTEM_CHECKED).

Дополнительные сведения о заметках карты значений см. в следующих разделах:

Формат карты заметок

В следующей таблице описаны поля, включенные в карту заметок.

Поле Описание
"A" Указывает, что используется определенная схема кодирования. Для будущих схем кодирования могут поддерживаться дополнительные префиксы.
Символ разделителя Обычно двоеточие (:) используется, но может быть другим символом, кроме NULL или пустого пробела. Так как этот символ будет использоваться в качестве разделителя для остальных полей, он не может использоваться как часть значения на карте.
0, 1 или 2 Значение типа , указывающее, какой ключ используется. Для сопоставления ролей и состояний представления в виде дерева и списка этот ключ может быть 0 (индекс изображения), 1 (индекс изображения состояния) или 2 (индекс изображения наложения). Для ползунков и других элементов управления, которые не предлагают выбор ключей, это значение должно быть равно 0.
Символ разделителя :
Пары "ключ — значение" Каждая пара состоит из ключевой строки и символа-разделителя. Строка ключа является числом и может иметь десятичный или шестнадцатеричный формат (с префиксом 0x в начале).
Строка значения Для карт значений это строка. Для карт ролей и состояний это число (десятичное или шестнадцатеричное).
Символ разделителя :

 

Например, карта может выглядеть следующим образом:

A:0:0:Cold:1:Warm:3:Hot:

Если эта схема значений применяется к элементу управления ползунок, значение "Теплый" будет доступно, когда ползунок находится в позиции 1. Так как значение 2 не включено в этот пример, будет предоставлено значение по умолчанию для этой позиции. Для ползунка значением по умолчанию будет процентное значение, например 33.