IUIAutomation6::RemoveActiveTextPositionChangedEventHandler-Methode (uiautomationclient.h)
Entfernt einen aktiven Ereignishandler für die Geänderte Textposition.
Wichtig
Microsoft Benutzeroberflächenautomatisierung-Clients sollten die IUIAutomationEventHandlerGroup-Schnittstellenmethoden verwenden, um Ereignislistener anstelle einzelner Ereignisregistrierungsmethoden zu registrieren, die hier und in den verschiedenen IUIAutomation-Schnittstellennamespaces definiert sind.
Syntax
HRESULT RemoveActiveTextPositionChangedEventHandler(
[in] IUIAutomationElement *element,
[in] IUIAutomationActiveTextPositionChangedEventHandler *handler
);
Parameter
[in] element
Ein Zeiger auf das Benutzeroberflächenautomatisierung Element, das dem Ereignishandler zugeordnet ist.
[in] handler
Ein Zeiger auf das -Objekt, das das aktive Textpositionsänderungsereignis behandelt.
Rückgabewert
Diese Methode gibt keinen Wert zurück.
Bemerkungen
Bevor Sie einen Ereignishandler implementieren, sollten Sie mit den Threadingproblemen vertraut sein, die unter Grundlegendes zu Threadingproblemen beschrieben werden.
Die position des aktiven Texts wird durch ein Navigationsereignis innerhalb oder zwischen schreibgeschützten Textelementen (z. B. Webbrowsern, PDF-Dokumenten oder EPUB-Dokumenten ) mithilfe von Lesezeichen (oder Fragmentbezeichnern, die auf einen Speicherort innerhalb einer Ressource verweisen) angegeben. Beispiele:
- Navigieren zu einem Lesezeichen innerhalb derselben Webseite
- Navigieren zu einem Lesezeichen auf einer anderen Webseite
- Aktivieren eines Links zu einem anderen Speicherort innerhalb derselben PDF-Datei
- Aktivieren eines Links zu einem anderen Speicherort innerhalb derselben EPUB
Verwenden Sie diesen Ereignishandler, um die visuelle Position des Lesezeichens/Ziels mit der Fokusposition in einem schreibgeschützten Textelement zu synchronisieren, was bei Verwendung von Lesezeichen oder Fragmentbezeichnern abweichen kann.
Wenn beispielsweise ein seitenanker (<a href="#C4">Jump to Chapter 4</a> ...<h1><a name="C4">Chapter 4</a></h1>
) aufgerufen wird, wird der visuelle Speicherort aktualisiert, aber der Benutzeroberflächenautomatisierung Client verbleibt am ursprünglichen Speicherort. Dies führt zu Aktionen wie Textlesen oder Verschieben von Befehlen für das nächste Element, beginnend am ursprünglichen Speicherort und nicht am neuen Speicherort.
Ebenso wird beim Aktivieren eines neuen Seiten-URI (mit einem Fragmentbezeichner: (<a href="www.blah.com#C4">Jump to Chapter 4</a>
) die neue Seite geladen und zum angegebenen Lesezeichen springt, aber die Benutzeroberflächenautomatisierung Clients am anfang der Seite belässt.
Für bearbeitbare Textelemente, z. B. Edit - und Rich Edit-Steuerelemente , können Sie auf ein SelectionChanged-Ereignis lauschen.
Es ist möglich, dass ein Ereignis an einen Ereignishandler übermittelt wird, nachdem der Handler abbestellt wurde, wenn das Ereignis gleichzeitig mit der Anforderung empfangen wird, das Ereignis abzubestellen. Die bewährte Methode besteht darin, den COM-Standard (Component Object Model) zu befolgen und zu vermeiden, dass das Ereignishandlerobjekt zerstört wird, bis seine Verweisanzahl 0 (Null) erreicht hat. Das Löschen eines Ereignishandlers unmittelbar nach der Abmeldung von Ereignissen kann zu einer Zugriffsverletzung führen, wenn ein Ereignis verspätet übermittelt wird.
Anforderungen
Anforderung | Wert |
---|---|
Unterstützte Mindestversion (Client) | Windows 10, Version 1809 [nur Desktop-Apps] |
Unterstützte Mindestversion (Server) | Windows Server, Version 1709 [nur Desktop-Apps] |
Zielplattform | Windows |
Kopfzeile | uiautomationclient.h (include UIAutomation.h) |
Weitere Informationen
IUIAutomation6::AddActiveTextPositionChangedEventHandler, IUIAutomation6-Schnittstelle