TextEdit-Steuerelementmuster
Führt Richtlinien und Konventionen für die Implementierung von ITextEditProvider ein, einschließlich Informationen zu Eigenschaften und Methoden. Das TextEdit-Steuerelementmuster wird für den programmgesteuerten Zugriff auf ein Steuerelement verwendet, das Text ändert, z. B. ein Steuerelement, das eine automatische Korrektur ausführt oder die Eingabekomposition aktiviert.
Hinweis
Implementierungshinweise in diesem Thema beziehen sich auf APIs, die von Text Services Framework (TSF) stammen. Weitere Informationen zu TSF und der API-Referenz finden Sie unter Text Services Framework.
Erforderliche Elemente für ITextEditProvider
Diese Eigenschaften und Methoden sind für die Implementierung der ITextEditProvider-Schnittstelle erforderlich.
Erforderliche Member | Memberart | Hinweise |
---|---|---|
GetActiveComposition | Methode | Gibt den Bereich der aktuellen Konvertierung zurück (keine, wenn keine Konvertierung vorhanden ist). Gibt die aktive Komposition zurück (in TSF ist dies der Bereich, der durch GUID_PROP_COMPOSING gekennzeichnet ist). Beim Microsoft Japanese Input Method Editor (IME) wäre dies beispielsweise der vollständige unterstrichene Text. |
GetConversionTarget | Methode | Gibt den aktuellen Konvertierungszielbereich zurück (kein, wenn keine Konvertierung erfolgt). In TSF ist dies der Bereich von Zeichen, die aus der TF_DISPLAYATTRIBUTE-Struktur als TF_ATTR_TARGET_NOTCONVERTED oder TF_ATTR_TARGET_CONVERTED gekennzeichnet sind. |
Die Ereignisse TextEditTextChanged und ConversionTargetChanged müssen von Microsoft Benutzeroberflächenautomatisierung-Elementen ausgelöst werden, die das TextEdit-Muster unterstützen.
TextEditTextChanged
- Verwenden Sie die UiaRaiseTextEditTextChangedEvent-Funktion , um das TextEditTextChanged-Ereignis auszulösen .
- In der folgenden Tabelle sind die Fälle aufgeführt, in den Sie das -Ereignis und die zu verwendenden UiaRaiseTextEditTextChangedEvent-Parameter auslösen sollten.
TextEditChangeType | Ereignisnutzlast | Hinweise |
---|---|---|
Autokorrektur | Neue korrigierte Zeichenfolge | Wird ausgelöst, wenn das Steuerelement eine automatische Korrektur vornimmt. Oder wenn eine Ersetzung über TSF erfolgt und der Bereich den GUID_PROP_TKB_ALTERNATES Wert TKB_ALTERNATES_AUTOCORRECTION_APPLIED hat. |
Zusammensetzung | Die aktualisierte Zeichenfolge | Die Nutzlast darf nur die geänderten Zeichen enthalten (senden Sie nicht die gesamte Kompositionszeichenfolge). Wird immer dann ausgelöst, wenn eine Kompositionsersetzung vorgenommen wird. In TSF wird eine Kompositionsersetzung als Ersetzung definiert, für die das flag GUID_PROP_COMPOSING festgelegt ist. Edit-Steuerelemente, die TSF implementieren, können diese Änderungen über die OnEndEdit-Benachrichtigung überwachen. |
CompositionFinalized | Die fertige Kompositionszeichenfolge (siehe Hinweise) | In TSF wird die abschließende Konvertierungszeichenfolge durch das GUID_PROP_COMPOSING Flag definiert, das aus einer Komposition entfernt wird. Bearbeitungssteuerelemente, die TSF implementieren, sollten die fertige Zeichenfolge aus EndComposition bestimmen und das Ereignis auslösen, wenn OnEndEdit aufgerufen wird. Die fertige Kompositionszeichenfolge kann leer sein, wenn die Komposition abgebrochen oder gelöscht wurde. |
ConversionTargetChanged
- ConversionTargetChanged tritt auf , wenn das Konvertierungsziel von einem Ziel in ein anderes geändert wird.
- Verwenden Sie die UiaRaiseAutomationEvent-Funktion , um das ConversionTargetChanged-Ereignis auszulösen (übergeben Sie den UIA_TextEdit_ConversionTargetChangedEventId Ereignisbezeichner).
- ConversionTargetChanged sollte nicht ausgelöst werden, wenn sich der Inhalt des Ziels ändert. Wenn die Zieländerung gleichzeitig mit einer Kompositionsänderung erfolgt, muss das Zieländerungsereignis ausgelöst werden, nachdem bereits Kompositionsereignisse ausgelöst wurden.
- In TSF wird das Konvertierungsziel durch den Wert definiert, TF_ATTR_TARGET_CONVERTED aus der TF_DISPLAYATTRIBUTE-Struktur festgelegt wird. Änderungen können mit OnEndEdit überwacht werden.