MenuBar 控制項類型

本主題提供MenuBar控制項類型的 Microsoft 消費者介面自動化支援相關資訊。

功能表列控制項是實作 MenuBar 控制項類型的控制項範例。 功能表列可讓使用者啟用應用程式中所包含的命令和選項。

下列各節會定義MenuBar控制項類型所需的樹狀結構、屬性、控制項模式和事件消費者介面自動化。 消費者介面自動化需求適用于 UI 架構/平臺整合消費者介面自動化控制項類型和控制項模式支援的所有功能表列控制項。

本主題包含下列各節。

一般樹狀結構

下表描述與功能表列控制項相關的消費者介面自動化樹狀結構的一般控制項和內容檢視,並描述每個檢視中可包含的內容。 如需 UI 自動化樹狀結構的詳細資訊,請參閱 UI 自動化樹狀結構概觀

控制項檢視 內容檢視
  • MenuBar
    • MenuItem (1 個以上)
    • 其他控制項 (0 個以上)
  • 不適用
    • MenuItem (1 個以上)
    • 其他控制項 (0 個以上)

 

除非應用程式包含多個功能表列) ,否則功能表列控制項一律會出現在控制項檢視中,但不會在內容檢視中顯示,因為它通常不會將有意義的資訊傳達給使用者 (。

消費者介面自動化用戶端可以接聽UIA_MenuModeStartEventId事件,以確保在 UI 進入功能表模式時一致地收到通知。 當應用程式處於功能表模式時,可能會擷取功能表導覽的所有鍵盤輸入 (例如,輸入 's' 可能會叫用 [ 儲存 ] 功能表,而不是在應用程式用戶端應用程式區域中輸入字元) 。 UIA_MenuModeStartEventId事件必須位於第一個UIA_MenuOpenedEventId事件之前,以確保邏輯一致性。 UIA_MenuModeEndEventId事件會遵循最後一個UIA_MenuClosedEventId事件。 按一下功能表項目也可以立即觸發 UIA_MenuModeStartEventId 事件,後面接著 UIA_MenuOpenedEventId 事件。

功能表列控制項可以包含其結構內的其他控制項,例如編輯控制項和下拉式方塊。 這些額外的控制項對應到控制項和內容檢視中列出的「其他控制項」。

相關屬性

下表列出消費者介面自動化屬性,其值或定義與MenuBar控制項類型特別相關。 如需消費者介面自動化屬性的詳細資訊,請參閱從 消費者介面自動化 Elements 擷取屬性

使用者介面自動化屬性 注意
UIA_AcceleratorKeyPropertyId NULL 功能表列通常沒有快速鍵。
UIA_AccessKeyPropertyId "ALT" 按下 ALT 鍵通常會將焦點帶到應用程式內的功能表列。
UIA_BoundingRectanglePropertyId 請參閱備註。 這個屬性所公開的值必須包含所有內含的控制項。
UIA_ControlTypePropertyId MenuBar
UIA_IsContentElementPropertyId FALSE 功能表列控制項不會包含在消費者介面自動化樹狀結構的內容檢視中。
UIA_IsControlElementPropertyId true 此功能表列控制項一律包含在 UI 自動化樹狀結構的控制項檢視中。
UIA_IsKeyboardFocusablePropertyId true 因為功能表列控制項包含的控制項可接受鍵盤焦點,所以可設定鍵盤焦點。
UIA_IsOffscreenPropertyId 請參閱備註。 這個屬性的值取決於此控制項是否可在畫面上檢視。
UIA_LabeledByPropertyId NULL 功能表列控制項通常沒有標籤。
UIA_LocalizedControlTypePropertyId 請參閱備註。 對應至 MenuBar 控制項類型的當地語系化字串。 en-US 或英文 (美國) 的預設值為 「功能表列」。
UIA_NamePropertyId 請參閱備註。 除非應用程式有一個以上的功能表列,否則功能表列控制項不需要名稱。 如果應用程式中有多個功能表列,請使用此屬性來公開辨別名稱,例如「格式」或「大綱」。
UIA_OrientationPropertyId 相依 這個屬性會公開此功能表列控制項是水平或垂直。

 

必要的控制項模式

下表列出功能表列控制項必須支援的 UI 自動化控制項模式。 如需控制項模式的詳細資訊,請參閱 UI Automation Control Patterns Overview

控制項模式 支援 備註
IExpandCollapseProvider 相依 如果控制項可以展開或折迭,則必須實作 ExpandCollapse 控制項模式。
IDockProvider 相依 如果控制項可以停駐到畫面的不同部分,則必須實作 Dock 控制項模式。
ITransformProvider 相依 如果控制項可以調整大小、旋轉或移動,則必須實作 轉換 控制項模式。

 

必要的事件

下表列出功能表列控制項需要支援消費者介面自動化事件。 如需 UI Automation Events Overview事件的詳細資訊,請參閱

UI 自動化事件 備註
UIA_AutomationFocusChangedEventId
UIA_BoundingRectanglePropertyId 屬性變更事件。
UIA_ExpandCollapseExpandCollapseStatePropertyId 屬性變更事件。 如果控制項支援 ExpandCollapse 控制項模式,則必須支援此事件。
UIA_IsEnabledPropertyId 屬性變更事件。 如果控制項支援 IsEnabled 屬性,它必須支援這個事件。
UIA_IsOffscreenPropertyId 屬性變更事件。 如果控制項支援 IsOffscreen 屬性,它必須支援這個事件。
UIA_StructureChangedEventId

 

概念

UI 自動化控制項類型概觀

UI 自動化概觀