Modèle de contrôle TextEdit
Présente des instructions et des conventions pour l’implémentation d’ITextEditProvider, notamment des informations sur les propriétés et les méthodes. Le modèle de contrôle TextEdit est utilisé pour l’accès par programmation à un contrôle qui modifie du texte, par exemple un contrôle qui effectue une correction automatique ou active la composition d’entrée.
Notes
Les notes d’implémentation de cette rubrique font référence aux API qui proviennent de L’infrastructure TSF (Text Services Framework). Pour plus d’informations sur TSF et la référence d’API, consultez Infrastructure des services de texte.
Membres requis pour ITextEditProvider
Ces propriétés et méthodes sont requises pour implémenter l’interface ITextEditProvider .
Membres nécessaires | Type de membre | Notes |
---|---|---|
GetActiveComposition | Méthode | Retourne la plage de la conversion actuelle (aucune en l’absence de conversion). Retourne la composition active (en TSF, il s’agit de la plage marquée par GUID_PROP_COMPOSING). Par exemple, avec l’éditeur de méthode d’entrée (IME) japonais Microsoft, il s’agit du texte intégral souligné. |
GetConversionTarget | Méthode | Retourne la plage cible de conversion actuelle (aucune si aucune conversion). Dans TSF, il s’agit de la plage de caractères marqués comme TF_ATTR_TARGET_NOTCONVERTED ou TF_ATTR_TARGET_CONVERTED de la structure TF_DISPLAYATTRIBUTE . |
Les événements TextEditTextChanged et ConversionTargetChanged doivent être déclenchés par Microsoft UI Automation éléments prenant en charge le modèle TextEdit.
TextEditTextChanged
- Utilisez la fonction UiaRaiseTextEditTextChangedEvent pour déclencher l’événement TextEditTextChanged .
- Le tableau suivant répertorie les cas dans lesquels vous devez déclencher l’événement et les paramètres UiaRaiseTextEditTextChangedEvent à utiliser.
TextEditChangeType | Charge utile d'un événement | Notes |
---|---|---|
Autocorrection | Nouvelle chaîne corrigée | Déclenché lorsqu’une correction automatique est effectuée par le contrôle . Ou chaque fois qu’un remplacement est effectué via TSF et que la plage a une valeur GUID_PROP_TKB_ALTERNATES de TKB_ALTERNATES_AUTOCORRECTION_APPLIED. |
Composition | Chaîne mise à jour | La charge utile doit inclure uniquement les caractères qui ont changé (n’envoyez pas la chaîne de composition entière). Déclenché chaque fois qu’un remplacement de composition est effectué. Dans TSF, un remplacement de composition est défini comme un remplacement dont l’indicateur GUID_PROP_COMPOSING est défini. Les contrôles de modification implémentant TSF peuvent surveiller ces modifications via la notification OnEndEdit . |
CompositionFinalized | Chaîne de composition finalisée (voir Notes) | Dans TSF, la chaîne de conversion en cours de finalisation est définie par l’indicateur GUID_PROP_COMPOSING supprimé d’une composition. Les contrôles d’édition implémentant TSF doivent déterminer la chaîne finalisée à partir de EndComposition et déclencher l’événement quand OnEndEdit est appelé. La chaîne de composition finalisée peut être vide si la composition a été annulée ou supprimée. |
ConversionTargetChanged
- ConversionTargetChanged se produit lorsque la cible de conversion change d’une cible à une autre.
- Utilisez la fonction UiaRaiseAutomationEvent pour déclencher l’événement ConversionTargetChanged (passer l’identificateur d’événement UIA_TextEdit_ConversionTargetChangedEventId ).
- ConversionTargetChanged ne doit pas être déclenché lorsque le contenu de la cible change. Si la modification de la cible se produit simultanément avec une modification de composition, l’événement de modification cible doit être déclenché après que des événements de composition ont déjà été déclenchés.
- Dans TSF, la cible de conversion est définie par la valeur TF_ATTR_TARGET_CONVERTED définie à partir de la structure TF_DISPLAYATTRIBUTE . Les modifications peuvent être surveillées à l’aide de OnEndEdit.