Méthode ITextHost ::TxNotify (textserv.h)
Avertit l’hôte de texte de différents événements.
Syntaxe
HRESULT TxNotify(
[in] DWORD iNotify,
[in] void *pv
);
Paramètres
[in] iNotify
Type : DWORD
Événement à notifier à l’hôte. L’un des codes de notification EN_ .
[in] pv
Type : void*
Données supplémentaires, dépendantes d’iNotify.
Valeur retournée
Type : HRESULT
Retournez S_OK si la méthode réussit.
Retournez S_FALSE si la méthode échoue. Pour plus d’informations sur les codes d’erreur COM, consultez Gestion des erreurs dans COM.
Remarques
Notez qu’il existe deux catégories d’événements de base, direct et différé . Les événements directs sont envoyés immédiatement, car ils nécessitent un traitement, par exemple , EN_PROTECTED. Les événements retardés sont envoyés une fois que tout le traitement a eu lieu ; le contrôle est donc dans un état stable. Des exemples de notifications différées sont les EN_CHANGE, les EN_ERRSPACE et les EN_SELCHANGE.
Les événements de notification sont identiques aux codes de notification envoyés à la fenêtre parente d’une fenêtre d’édition enrichie. Le déclenchement d’événements peut être contrôlé avec un masque défini via le message EM_SETEVENTMASK .
En général, il est légal d’effectuer des appels à l’objet services de texte lors du traitement de cette méthode ; toutefois, les implémenteurs sont avertis d’éviter une récursivité excessive.
Voici la liste des notifications qui peuvent être envoyées.
Notification | Signification |
---|---|
EN_CHANGE | Envoyé après que le système a mis à jour l’écran, lorsque l’utilisateur effectue une action qui a peut-être modifié le texte dans le contrôle. |
EN_DROPFILES | Envoyé lors de la réception d’un message WM_DROPFILES ou d’une notification IDropTarget ::D ragEnter . |
EN_ERRSPACE | Envoyé lorsqu’un contrôle ne peut pas allouer suffisamment de mémoire pour répondre à une demande spécifiée. |
EN_HSCROLL | Envoyé lorsque l’utilisateur clique sur la barre de défilement horizontale du contrôle avant la mise à jour de l’écran. |
EN_KILLFOCUS | Envoyé lorsque le contrôle perd le focus du clavier. |
EN_LINK | Envoyé lorsqu’un contrôle d’édition enrichi reçoit différents messages, tels que des messages de clic de souris, lorsque le pointeur de la souris se trouve sur du texte qui a l’effet CFE_LINK. |
EN_MAXTEXT | Envoyé lorsque l’insertion de texte actuelle a dépassé le nombre maximal de caractères pour le contrôle. |
EN_OLEOPFAILED | Envoyé lorsqu’une action utilisateur sur un objet OLE a échoué. |
EN_PROTECTED | Envoyé lorsque l’utilisateur effectue une action qui modifie la plage de texte protégée. |
EN_REQUESTRESIZE | Envoyé lorsque le contenu d’un contrôle d’édition enrichi est différent de la taille de fenêtre du contrôle. |
EN_SAVECLIPBOARD | Envoyé lors de la destruction d’un contrôle d’édition. L’hôte de texte doit indiquer si OleFlushClipboard doit être appelé. Les données indiquant le nombre de caractères et d’objets à vider sont envoyées dans la structure de données ENSAVECLIPBOARD . La valeur du masque n’est rien. |
EN_SELCHANGE | Envoyé lorsque la sélection actuelle a changé. Une structure de données SELCHANGE est également envoyée, ce qui indique la nouvelle plage de sélection au type de données sur laquelle la sélection est actuellement effectuée. Contrôlé via le masque ENM_SELCHANGE . |
EN_SETFOCUS | Envoyé lorsque le contrôle d’édition reçoit le focus du clavier. Aucune donnée supplémentaire n’est envoyée ; il n’y a pas de masque. |
EN_STOPNOUNDO | Envoyé lorsqu’une action se produit pour laquelle le contrôle ne peut pas allouer suffisamment de mémoire pour maintenir l’état d’annulation. Si S_FALSE est retourné, l’action est arrêtée ; sinon, l’action continue. |
EN_UPDATE | Envoyé avant qu’un contrôle de modification demande un redessinage des données ou du texte modifiés. Aucune donnée supplémentaire n’est envoyée. Cet événement est contrôlé via le masque ENM_UPDATE . Rich Edit 2.0 et versions ultérieures : Le masque ENM_UPDATE est ignoré et le code de notification EN_UPDATE est toujours envoyé. Toutefois, lorsque Microsoft Rich Edit 3.0 émule Microsoft Rich Edit 1.0, le masque ENM_UPDATE contrôle cette notification. |
EN_VSCROLL | Envoyé lorsque l’utilisateur clique sur la barre de défilement verticale d’un contrôle d’édition ou lorsque l’utilisateur fait défiler la roulette de la souris sur le contrôle d’édition, avant que l’écran ne soit mis à jour. Ceci est contrôlé via le masque ENM_SCROLL ; aucune donnée supplémentaire n’est envoyée. |
Configuration requise
Condition requise | Valeur |
---|---|
Client minimal pris en charge | Windows Vista [applications de bureau uniquement] |
Serveur minimal pris en charge | Windows Server 2003 [applications de bureau uniquement] |
Plateforme cible | Windows |
En-tête | textserv.h |
DLL | Msftedit.dll |
Voir aussi
Conceptuel
Référence