Abrufen von Eigenschaften aus Benutzeroberflächenautomatisierung Elementen

Eigenschaften für IUIAutomationElement-Objekte enthalten Informationen zu Benutzeroberflächenelementen, in der Regel Steuerelemente. Die Eigenschaften eines Elements sind generisch. das heißt, nicht spezifisch für einen Steuerelementtyp. Steuerelementspezifische Eigenschaften eines Elements werden durch seine Steuerelementmusterschnittstellen verfügbar gemacht.

Microsoft Benutzeroberflächenautomatisierung Eigenschaften sind schreibgeschützt. Um Eigenschaften eines Steuerelements festzulegen, müssen Sie die Methoden des entsprechenden Steuerelementmusters verwenden. Verwenden Sie beispielsweise IUIAutomationScrollPattern::Scroll, um die Positionswerte eines Bildlauffensters zu ändern.

Zur Verbesserung der Leistung können Eigenschaftswerte von Steuerelementen und Steuerelementmustern zwischengespeichert werden, wenn Elemente abgerufen werden. Weitere Informationen finden Sie unter Caching Benutzeroberflächenautomatisierung Properties and Control Patterns.

Dieses Thema enthält folgende Abschnitte:

Eigenschaften-IDs

Eigenschaftsbezeichner werden in Uiautomationclient.h definiert. Sie werden verwendet, um Eigenschaften anzugeben, wenn Sie Ereignisse mit Geänderter Eigenschaften abonnieren, Eigenschaftswerte abrufen und Eigenschaftsbedingungen erstellen. Eigenschaftsbezeichner identifizieren auch die Eigenschaft, die sich geändert hat, wenn IUIAutomationPropertyChangedEventHandler::HandlePropertyChangedEvent aufgerufen wird.

Eine Liste der Benutzeroberflächenautomatisierung Eigenschaftenbezeichner finden Sie unter Eigenschaftenbezeichner.

Eigenschaftsbedingungen

Die Eigenschaften-IDs werden zum Erstellen von IUIAutomationPropertyCondition-Objekten verwendet, die verwendet werden, um Benutzeroberflächenautomatisierung Elemente zu suchen. Beispielsweise können Sie ein Element mit einem bestimmten Namen oder alle aktivierten Steuerelemente suchen. Jede Eigenschaftsbedingung gibt einen Eigenschaftenbezeichner und den Wert an, mit dem die Eigenschaft übereinstimmen muss.

Weitere Informationen finden Sie unter den folgenden Referenzthemen:

Abrufen von Eigenschaften

Einige generische Eigenschaften und alle Steuerelementmustereigenschaften sind als Eigenschaften auf der IUIAutomationElement- oder Steuerelementmusterschnittstelle verfügbar und können mithilfe eines Accessors wie IUIAutomationElement::CurrentName oder CachedDockPositionabgerufen werden.

Darüber hinaus können alle aktuellen oder zwischengespeicherten Eigenschaften (außer Steuerelementmustereigenschaften) mit einer der folgenden Methoden abgerufen werden:

Diese Methoden bieten eine etwas bessere Leistung und zugriff auf den gesamten Eigenschaftenbereich. Werte werden jedoch in VARIANT-Strukturen zurückgegeben, wohingegen die einzelnen Eigenschaftenaccessoren den Wert in den entsprechenden Typ umsetzten.

Standardeigenschaftswerte

Wenn ein Benutzeroberflächenautomatisierung Anbieter keine Eigenschaft implementiert, können Benutzeroberflächenautomatisierung einen Standardwert bereitstellen. Wenn der Anbieter für ein Steuerelement beispielsweise die von UIA _ HelpTextPropertyIdidentifizierte Eigenschaft nicht unterstützt, gibt Benutzeroberflächenautomatisierung eine leere Zeichenfolge zurück. Wenn der Anbieter die von UIA _ IsDockPatternAvailablePropertyIdidentifizierte Eigenschaft nicht unterstützt, gibt Benutzeroberflächenautomatisierung false zurück.

Der Unterschied zwischen IUIAutomationElement::GetCurrentPropertyValue und GetCurrentPropertyValueEx (und zwischen ähnlichen Methodenpaaren) besteht darin, dass die "Ex"-Methode angeben kann, dass kein Standardwert zurückgegeben werden soll. In diesem Fall ist der Rückgabewert eine spezielle eindeutige Konstante, die angibt, dass die -Eigenschaft nicht unterstützt wird. Beim Empfang dieses Werts kann die Anwendung einen eigenen Wert bereitstellen oder einfach die -Eigenschaft ignorieren.

Konzept

Übersicht über die Benutzeroberflächenautomatisierungs-Eigenschaften

Eigenschaftsbezeichner