值對應注釋

使用值對應批註,您可以使用對應字串來指出清單檢視或樹狀檢視中專案影像索引如何對應至其角色或狀態。 例如,對應字串可能表示清單檢視的影像索引 0 對應至核取方塊的角色,而影像索引 1 則對應至選項按鈕的角色。

您也可以使用值對應批註來指定對應至滑杆上數值的字串。

使用這項技術的時機

請考慮在下列情況下使用值對應批註。

  • 當擁有者繪製的清單檢視或樹狀檢視納入影像的使用時,而且您想要根據該影像提供自訂的無障礙描述 (Description 屬性) 。 下圖顯示一個範例。

    [開始] 功能表的圖例,其中圖示提供內容的視覺線索

  • 當擁有者繪製的清單檢視或樹狀檢視控制項納入影像的使用時,樹狀結構或清單專案的運作方式就像是簡單的控制項,通常是核取方塊或選項按鈕,而且您想要將影像對應至角色。 下列螢幕擷取畫面顯示範例。

    設定核取方塊和選項按鈕值的 Internet Explorer 選項螢幕擷取畫面

  • 當滑杆用來選取可描述為簡單整數以外的值時,如下列螢幕擷取畫面所示,其中螢幕解析度設定是由字串描述。

    用來設定螢幕解析度之滑杆的螢幕擷取畫面

使用值對應注釋時,對應字串會指出清單或樹狀結構的影像索引如何對應至其角色或狀態。 或者,它可以指出滑杆的數值如何對應至字串。 例如,對應字串可能表示清單檢視的影像索引 0 對應至核取方塊的角色,而影像索引 1 會對應至選項按鈕的角色。 使用 IAccPropServices::SetHwndPropStr () 將對應字串附加至控制項。

因為需要控制項特定知識才能支援值對應,所以支援值對應注釋的控制項和屬性數目有限,包括滑杆值對應、清單檢視和樹狀檢視。

滑杆值對應

PROPID_ACC_VALUEMAP 包含從內部滑杆位置到人類可讀取字串的對應。 Oleacc.dll滑杆 Proxy 支援此屬性。 如果在值對應中找到目前的滑杆值,對應的字串將會公開為值,而不是預設百分比字串 (例如「50」) 。

清單檢視和樹狀檢視

PROPID_ACC_ROLEMAPPROPID_ACC_STATEMAPPROPID_ACC_DESCRIPTONMAP 提供從狀態映射索引到角色和狀態值的對應。 這些對應可讓這些影像索引對應到適當的角色, (通常會 ROLE_SYSTEM_RADIOBUTTONROLE_SYSTEM_CHECKBUTTON) 和其他狀態位 (通常會 STATE_SYSTEM_CHECKED) 。

如需值對應批註的詳細資訊,請參閱下列主題:

注釋對應格式

下表描述批註對應中包含的欄位。

欄位 Description
'A' 表示使用特定的程式碼撰寫配置。 未來編碼配置可能支援其他前置詞。
分隔符號 通常會使用冒號 (:) ,但可以是 Null 或空白以外的另一個字元。 因為此字元會當做其餘欄位的分隔符號使用,所以不能當做對應中值的一部分使用。
0、1 或 2 值,指出正在使用哪一個索引鍵。 針對樹狀檢視和清單檢視角色和狀態對應,此索引鍵可以是 0 (影像索引) 、1 (狀態影像索引) ,或 2 (重迭影像索引) 。 對於未提供按鍵選擇的滑杆和其他控制項,此值必須為 0。
分隔符號 :
索引鍵/值組 每個配對都包含一個索引鍵字串和一個分隔符號。 索引鍵字串是數位,而且可以是十進位或十六進位 (且前置 「0x」 前置詞) 格式。
值字串 針對值對應,這是字串。 對於角色和狀態對應,這是 (十進位或十六進位) 的數位。
分隔符號 :

 

例如,地圖看起來可能如下所示:

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

當此值對應套用至滑杆控制項時,當滑杆位於位置 1 時,將會公開 「Warm」 的值。 因為這個範例中不包含值 2,所以將會公開該位置的預設值。 針對滑杆,預設值會是百分比值,例如 33。