值對應批注
使用值對應批注,您可以使用對應字串來指出清單檢視或樹視圖中專案影像索引如何對應至其角色或狀態。 例如,對應字串可能表示清單檢視的影像索引 0 會對應至複選框的角色,而影像索引 1 則對應至單選按鈕的角色。
您也可以使用值對應註釋來指定對應至滑桿上數值的字串。
使用這項技術的時機
請考慮在下列情況下使用值對應批注。
當擁有者繪製的清單檢視或樹視圖納入影像的使用時,而且您想要根據該影像提供自定義的無障礙描述(Description 屬性)。 下圖顯示範例。
開始功能表的
當擁有者繪製的清單檢視或樹視圖控件納入影像的使用時,樹狀結構或清單項目的運作方式就像簡單的控件,通常是複選框或單選按鈕,而您想要將影像對應至角色。 下列螢幕快照顯示範例。
當滑桿用來選取可描述為簡單整數以外的值時,如下列螢幕快照所示,其中螢幕解析度設定是由字串描述。
使用值對應批注,對應字串會指出清單或樹狀結構影像索引如何對應至其角色或狀態。 或者,它可以指出滑桿的數值如何對應至字串。 例如,對應字串可能表示清單檢視的影像索引 0 會對應至複選框的角色,而影像索引 1 會對應至單選按鈕的角色。 使用 IAccPropServices::SetHwndPropStr() 將對應字串附加至控件。
由於需要控制項特定知識才能支援值對應,因此支援值對應批注的控件和屬性數目有限,包括滑桿值對應、清單檢視和樹視圖。
滑桿值對應
PROPID_ACC_VALUEMAP 包含從內部滑桿位置到人類可讀取字串的對應。 Oleacc.dll 滑桿 Proxy 支援此屬性。 如果在值對應中找到目前的滑桿值,對應的字串將會公開為值,而不是預設百分比字串(例如,“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 時,將會公開 「Warm」 的值。 因為這個範例中不包含值 2,因此將會公開該位置的預設值。 對於滑桿,預設值為百分比值,例如33。