Sdílet prostřednictvím


Typ ovládacího prvku MenuItem

Toto téma obsahuje informace o podpoře microsoft UI Automation pro typ ovládacího prvku MenuItem.

Ovládací prvek nabídky umožňuje hierarchii prvků spojených s příkazy a obslužnými rutinami událostí. V typické aplikaci pro Windows obsahuje řádek nabídek několik položek nabídky (například Soubor, Upravita Okno) a každá položka nabídky zobrazí nabídku. Nabídka obsahuje kolekci položek nabídky (například Nový, Otevříta Zavřít), které lze rozbalit tak, aby zobrazovaly další položky nabídky nebo prováděly konkrétní akci po kliknutí.

Následující části definují požadovanou strukturu stromu automatizace uživatelského rozhraní, vlastnosti, vzory ovládacích prvků a události pro typ ovládacího prvku MenuItem. Požadavky na automatizaci uživatelského rozhraní platí pro všechny ovládací prvky položek nabídky, ve kterých architektura uživatelského rozhraní nebo platforma integruje podporu automatizace uživatelského rozhraní pro typy ovládacích prvků a vzory ovládacích prvků.

Toto téma obsahuje následující části.

Typická stromová struktura

Následující tabulka znázorňuje typické zobrazení ovládacího prvku a obsahu stromu automatizace uživatelského rozhraní, které se týká ovládacích prvků položek nabídky a popisuje, co může být obsaženo v jednotlivých zobrazeních. Další informace o stromu automatizace uživatelského rozhraní naleznete v tématu přehled stromu automatizace uživatelského rozhraní.

Zobrazení ovládacího prvku Zobrazení obsahu
  • MenuItem "Nápověda"
    • Nabídka (podnabídka položky nabídky Nápověda)
      • MenuItem "Témata nápovědy"
      • MenuItem "About Notepad"
  • MenuItem "Nápověda"
    • MenuItem "Témata nápovědy"
    • MenuItem "About Notepad"

 

Zobrazení ovládacího prvku položky nabídky má strukturu stromu automatizace uživatelského rozhraní zobrazenou výše. Všimněte si, že položka nabídky pro Nápovědu na řádku nabídek byla přidána k lepší ilustraci struktury.

Pro zobrazení obsahu chybí nabídka stromu automatizace uživatelského rozhraní, protože koncovému uživateli nesděluje smysluplné informace.

Relevantní vlastnosti

Následující tabulka uvádí vlastnosti automatizace uživatelského rozhraní, jejichž hodnota nebo definice jsou zvláště relevantní pro typ ovládacího prvku MenuItem. Další informace o vlastnostech automatizace uživatelského rozhraní naleznete v tématu Načítání vlastností z prvků automatizace uživatelského rozhraní.

Vlastnost automatizace uživatelského rozhraní Hodnota Poznámky
UIA_AutomationIdPropertyId Viz poznámky. Hodnota této vlastnosti musí být jedinečná mezi všemi partnerskými prvky v nezpracovaného zobrazení stromu automatizace uživatelského rozhraní. Přidělte vlastnost AutomationId pro položku nabídky, pokud je prvek známý jako konzistentní v různých instancích uživatelského rozhraní. Pokud je položka nabídky dynamicky naplněna a není předvídatelná, ponechte AutomationId vlastnost prázdná.
UIA_BoundingRectanglePropertyId Viz poznámky. Vnější obdélník, který obsahuje celý ovládací prvek.
UIA_ClickablePointPropertyId Viz poznámky. Podporuje se, pokud existuje ohraničující obdélník. Pokud ne každý bod uvnitř ohraničujícího obdélníku je možné kliknout a prvek provádí specializované testování hitů, přepište a poskytněte kliknutelný bod.
UIA_ControlTypePropertyId MenuItem
UIA_IsContentElementPropertyId PRAVDIVÝ Ovládací prvek položky nabídky je vždy součástí zobrazení obsahu stromu automatizace uživatelského rozhraní.
UIA_IsControlElementPropertyId PRAVDIVÝ Ovládací prvek položky nabídky je vždy součástí zobrazení ovládacího prvku stromu automatizace uživatelského rozhraní.
UIA_IsKeyboardFocusablePropertyId Viz poznámky. Pokud ovládací prvek může přijímat fokus klávesnice, musí tuto vlastnost podporovat.
UIA_LocalizedControlTypePropertyId Viz poznámky. Lokalizovaný řetězec odpovídající typu ovládacího prvku MenuItem. Výchozí hodnota je "položka nabídky" pro en-US nebo angličtinu (Spojené státy).
UIA_NamePropertyId Viz poznámky. Název ovládacího prvku položky nabídky je text, který se používá k označení.

 

Požadované vzory ovládacích prvků

V následující tabulce jsou uvedeny vzory ovládacích prvků automatizace uživatelského rozhraní, které musí ovládací prvky nabídky podporovat. Další informace o vzorech ovládacích prvků najdete v tématu přehled vzorů ovládacích prvků automatizace uživatelského rozhraní.

Vzor ovládacího prvku Podpora Poznámky
IExpandCollapseProvider Závisí Pokud lze ovládací prvek rozbalit nebo sbalit, implementujte IExpandCollapseProvider.
IInvokeProvider Závisí Pokud ovládací prvek spustí jednu akci nebo příkaz, implementujte IInvokeProvider.
ISelectionItemProvider Závisí Pokud se ovládací prvek používá k výběru ze seznamu možností mezi položkami nabídky, implementujte ISelectionItemProvider.
IToggleProvider Závisí Pokud ovládací prvek představuje možnost, která může být zapnuta nebo vypnuta, implementujte IToggleProvider.

 

Požadované události

V následující tabulce jsou uvedeny události automatizace uživatelského rozhraní, které ovládací prvky položek nabídky vyžadují pro podporu. Další informace o událostech najdete v tématu Přehled událostí automatizace uživatelského rozhraní.

Událost automatizace uživatelského rozhraní Poznámky
UIA_AutomationFocusChangedEventId
UIA_BoundingRectanglePropertyId událost změněnou vlastností.
UIA_ExpandCollapseExpandCollapseStatePropertyId událost změněnou vlastností. Pokud ovládací prvek podporuje ExpandCollapse vzor ovládacího prvku, musí tuto událost podporovat.
UIA_Invoke_InvokedEventId Pokud ovládací prvek podporuje vzor ovládacího prvku Invoke, musí tuto událost podporovat.
UIA_IsEnabledPropertyId událost změněnou vlastností. Pokud ovládací prvek podporuje vlastnost IsEnabled, musí tuto událost podporovat.
UIA_IsOffscreenPropertyId událost změněnou vlastností. Pokud ovládací prvek podporuje vlastnost IsOffscreen, musí tuto událost podporovat.
UIA_SelectionItem_ElementAddedToSelectionEventId Pokud ovládací prvek podporuje vzor ovládacího prvku SelectionItem, musí tuto událost podporovat.
UIA_SelectionItem_ElementRemovedFromSelectionEventId Pokud ovládací prvek podporuje vzor ovládacího prvku SelectionItem, musí tuto událost podporovat.
UIA_SelectionItem_ElementSelectedEventId Pokud ovládací prvek podporuje vzor ovládacího prvku SelectionItem, musí tuto událost podporovat.
UIA_StructureChangedEventId
UIA_ToggleToggleStatePropertyId událost změněnou vlastností. Pokud ovládací prvek podporuje vzor ovládacích prvků Přepnout, musí tuto událost podporovat.

 

Starší verze problémů

U položek nabídky Microsoft Win32 je ovládací vzor Přepnout podporován pouze v případě, že je zaškrtnutá položka nabídky a zda je možné programově určit, zda je vyžadována podpora vzoru přepínacího ovládacího prvku. Vzhledem k tomu, že položka nabídky Win32 nezpřístupňuje, zda je možné ji zkontrolovat, je podporován vzor ovládacího prvku Invoke, pokud položka nabídky není zaškrtnutá. Vzor ovládacího prvku Invoke je vždy podporován, a to i pro položky nabídky, které jsou vyžadovány pouze pro podporu vzoru přepínacího ovládacího prvku. To znamená, že klienti se nezaměňují, když položka nabídky, která podporovala Vyvolat vzor ovládacího prvku (když položka nabídky byla nezaškrtnuta), už tento vzor při kontrole nepodporuje.

koncepční

Přehled typů ovládacích prvků automatizace uživatelského rozhraní

Přehled automatizace uživatelského rozhraní