Sdílet prostřednictvím


Načítání vlastností z elementů automatizace uživatelského rozhraní

Vlastnosti objektu IUIAutomationElement obsahují informace o prvcích uživatelského rozhraní, obvykle ovládací prvky. Vlastnosti elementu jsou obecné; to znamená, že není specifický pro typ ovládacího prvku. Vlastnosti prvku specifické pro ovládání jsou vystaveny jeho rozhraními vzoru řízení.

Vlastnosti automatizace uživatelského rozhraní Microsoftu jsou jen pro čtení. Chcete-li nastavit vlastnosti ovládacího prvku, je nutné použít metody příslušného vzoru ovládacího prvku. Můžete například použít IUIAutomationScrollPattern::Scroll, abyste změnili hodnoty pozice okna posouvání.

Aby se zlepšil výkon, dají se hodnoty vlastností ovládacích prvků a vzorů ovládacích prvků ukládat do mezipaměti při načtení prvků. Další informace naleznete v tématu Ukládání vlastností automatizace uživatelského rozhraní do mezipaměti a vzory ovládacích prvků.

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

Identifikátory vlastností

Identifikátory vlastností jsou definovány v Uiautomationclient.h. Slouží k určení vlastností při přihlášení k odběru událostí změny vlastností, získávání hodnot vlastností a vytváření podmínek pro vlastnosti. Identifikátory vlastností také identifikují vlastnost, která se změnila, když je zavolána IUIAutomationPropertyChangedEventHandler::HandlePropertyChangedEvent.

Seznam identifikátorů vlastností automatizace uživatelského rozhraní naleznete v tématu Identifikátory vlastností.

Podmínky vlastností

Identifikátory vlastností se používají při vytváření objektů IUIAutomationPropertyCondition, které slouží k vyhledání prvků automatizace uživatelského rozhraní. Můžete například najít prvek, který má určitý název, nebo všechny ovládací prvky, které jsou povolené. Každá podmínka vlastnosti určuje identifikátor vlastnosti a hodnotu, která se musí shodovat s vlastností.

Další informace najdete v následujících referenčních tématech:

Načítání vlastností

Některé obecné vlastnosti a všechny vlastnosti vzoru ovládacích prvků jsou k dispozici jako vlastnosti na IUIAutomationElement nebo rozhraní ovládacího vzoru a mohou být načteny pomocí přístupového objektu, například IUIAutomationElement::CurrentName nebo CachedDockPosition.

Kromě toho je možné načíst jakoukoli aktuální vlastnost nebo vlastnost uloženou v mezipaměti (kromě vlastností vzoru ovládacího prvku) pomocí jedné z následujících metod:

Tyto metody nabízejí mírně lepší výkon a přístup k celému rozsahu vlastností. Hodnoty jsou však vráceny ve strukturách VARIANT, zatímco jednotlivé vlastnosti přetypují hodnotu na příslušný typ.

Výchozí hodnoty vlastností

Pokud poskytovatel automatizace uživatelského rozhraní neimplementuje vlastnost, může automatizace uživatelského rozhraní zadat výchozí hodnotu. Pokud například zprostředkovatel ovládacího prvku nepodporuje vlastnost identifikovanou UIA_HelpTextPropertyId, vrátí automatizace uživatelského rozhraní prázdný řetězec. Podobně, pokud poskytovatel nepodporuje vlastnost identifikovanou UIA_IsDockPatternAvailablePropertyId, vrátí UI Automatizace hodnotu FALSE.

Rozdíl mezi IUIAutomationElement::GetCurrentPropertyValue a GetCurrentPropertyValueEx (a mezi podobnými páry metod) je, že metoda "Ex" může určit, že není vrácena žádná výchozí hodnota. V tomto případě je návratová hodnota speciální jedinečná konstanta označující, že vlastnost není podporována. Při přijetí této hodnoty může aplikace zadat vlastní hodnotu nebo jednoduše ignorovat vlastnost.

koncepční

Přehled vlastností automatizace uživatelského rozhraní

identifikátory vlastností