Benutzerdefinierte Word-Muster

In diesem Thema werden die benutzerdefinierten Benutzeroberflächenautomatisierung-Muster beschrieben, die in Microsoft Word für Windows bereitgestellt werden. Diese Muster können abgefragt und vom Anbieterknoten verwendet werden, der über ein Textmuster verfügt.

Zu Experimentierzwecken haben wir spezielle PowerShell-Skripts im PowerShell-Katalog erstellt, die jedes Word benutzerdefinierten Musters ausführen. Diese werden bei jedem Muster explizit genannt, oder Sie können nach suchenCustomPatternClient_Word, um alle Word Skripts anzuzeigen. Diese Skripts können in einem PowerShell-Fenster für eine ausgeführte instance von Word auf Windows 11 ausgeführt werden, um zu sehen, welche Ausgabe die benutzerdefinierten Muster erzeugen. Die Skripts sind mit kommentarbasierter Hilfe selbst dokumentiert.

Das Standard Ziel dieser Muster besteht darin, zusätzliche Informationen im Zusammenhang mit Word Inhalten bereitzustellen und Aktionen auszuführen, die nicht über vorhandene Benutzeroberflächenautomatisierung-Schnittstellen erreicht werden können. Benutzerdefinierte Muster können auf jedes Element in der Barrierefreiheitshierarchie angewendet werden. Einem Element können einzelne oder mehrere benutzerdefinierte Muster zugeordnet sein, die durch eine eigene GUID identifiziert werden können.

Operanden, die für alle Methoden gemeinsam sind

Für jeden Aufruf einer benutzerdefinierten Mustermethode gibt es drei feste Eingabeopernden.

Operand Typ Beschreibung
0 ConnectBoundObject Pattern-Objekt
1 GUID Die Methoden-GUID
2 Int32 Gesamtanzahl der Eingabe- und Ausgabeargumente

Rückgabewerte

Jede hier beschriebene Methode gibt ein HRESULT für die CallExtension zurück, um Erfolg oder Fehler anzuzeigen. Ein erfolgreicher Vorgang gibt S_OK zurück, und ein fehlgeschlagener Vorgang führt zu UIA_E_INVALIDOPERATON.

ITextRangeCustomProvider

Beschreibung

Guid: {93514122-FF04-4B2C-A4AD-4AB04587C129}

Dies ist ein Muster für Textbereiche, das auf die Word Knoten in der Barrierefreiheitshierarchie angewendet wird, die über einen Textmustersatz verfügt. ITextRangeCustomProvider stellt einen zusätzlichen Satz von Methoden bereit, die auf Textbereiche anwendbar sind. Clients können getEnlcosingElement für einen Textbereich abfragen und die benutzerdefinierte Muster-GUID verwenden, um zu überprüfen, ob das Element das benutzerdefinierte Muster unterstützt.

PowerShell-Skript

CustomPatternClient_Word_TextRangeProvider.ps1

Methoden

GetCustomAttributeValue

Guid: {081ACA91-32F2-46F0-9FB9-017038BC45F8}

Gibt Werte von benutzerdefinierten Attributen für einen Textbereich wie Zeilennummer, Spaltennummer, Abschnittsnummer, Seitenzahl und Lesezeichen zurück. Sie ähnelt der GetAttributeValue-API für ITextRange und gibt einen VARIANT-Wert zurück, der entweder ganze Zahlen oder Zeichenfolgenwerte für derzeit unterstützte benutzerdefinierte Attribute enthält. Sowohl Eingabeparameter als auch Rückgabewerte werden in IInspectable gepackt.

Operand Rolle Typ Beschreibung
3 Input ITextRangeProvider Eingabetextbereich
4 Input Int32 Eingabeattributebezeichner
5 Ausgabe Int32 oder String Rückgabewert des benutzerdefinierten Attributs

Derzeit unterstützt Word den folgenden Satz benutzerdefinierter Attributbezeichner:

Attributkennzeichen Eingangsgröße Rückgabetyp
Zeilennummer 0 Int32
Seitenzahl 1 Int32
Spaltennummer 2 Int32
Bereichsnummer 3 Int32
Lesezeichenname 4 Zeichenfolge
Spalten auf Seite 5 Int32
Status "Überschrift erweitern/reduzieren" 6 Int32

Für den Status "Überschrift erweitern/reduzieren" sind dies die möglichen Werte:

Statusname Ausgabewert Beschreibung
Collapsed 0 Keine untergeordneten Elemente sind sichtbar
Erweitert 1 Alle untergeordneten Elemente sind sichtbar
Blattgrund 2 Das Element wird nicht erweitert oder reduziert.

MoveBySentence

Guid: {F39655AC-133A-435B-A318-C197F0D3D203}

Wie die Move-API von ITextRangeProvider verschiebt sie den Textbereich um die angegebene Anzahl von Satzeinheiten vorwärts oder rückwärts.

Operand Rolle Typ Beschreibung
3 Eingabe/Ausgabe ITextRangeProvider Eingabe- und Ausgabetextbereich
4 Input Int32 Anzahl der zu verschiebenden Eingabeeinheiten
5 Ausgabe Int32 Rückgabewert der tatsächlich verschobenen Einheiten

MoveEndpointBySentence

Guid: {368E89A2-1BC2-4402-8C58-33C63ECFFA3B}

Wie die MoveEndpoint-API von ITextRangeProvider verschiebt sie einen Endpunkt des Textbereichs um die angegebene Anzahl von Satzeinheiten innerhalb des Dokumentbereichs.

Operand Rolle Typ Beschreibung
3 Eingabe/Ausgabe ITextRangeProvider Eingabe- und Ausgabetextbereich
4 Input Int32 Zu verschiebende Endpunkt
5 Input Int32 Anzahl der zu verschiebenden Eingabeeinheiten
6 Ausgabe Int32 Rückgabewert der tatsächlich verschobenen Einheiten

Endpunktwerte sind identisch mit textPatternRangeEndpoint-Enumeration.

ExpandToEnclosingSentence

Guid: {98FE8B34-F317-459A-9627-21123EA95BEA}

Wie die ExpandToEnclosingUnit-API von ITextRangeProvider wird der Bereich erweitert, wenn er kleiner als die Satzeinheit ist, oder gekürzt, wenn er länger als die Satzeinheit ist.

Operand Rolle Typ Beschreibung
3 Eingabe/Ausgabe ITextRangeProvider Eingabe- und Ausgabetextbereich

GetMathText

Guid: {380198E5-A51F-4618-A78D-57E9568A3862}

Für die Textbereiche, die vom Typ Mathe sind und mit der Anmerkung "Mathematik" versehen sind, unterstützt diese API verschiedene mathematische Textformate, z. B. MathML. Word unterstützt derzeit nur das MathML-Format. Diese API ähnelt GetText von ITextRangeProvider ohne length-Argument und gibt den vollständigen Text der mathematischen Zone zurück.

Operand Rolle Typ Beschreibung
3 Input ITextRangeProvider Eingabetextbereich
4 Input Int32 Mathe-Formattyp
5 Ausgabe Zeichenfolge Mathematischer Text für das angegebene Format
Mathe-Formattyp Eingabewert (Int32) Rückgabetyp
MathML 0 String

Anforderungen

Microsoft 365 Version 2112 (Build 14725.xxxxx)

Siehe auch

UIA_AutomationIdPropertyId

Benutzerdefinierte Eigenschaften, Ereignisse und Steuerelementmuster

Implementieren von benutzerdefinierten Steuerelementmustern

Word benutzerdefinierte Musterclientskripts