Share via


Fonction de rappel EDITWORDBREAKPROCA (winuser.h)

Fonction de rappel définie par l’application utilisée avec le message EM_SETWORDBREAKPROC . Un contrôle d’édition multiligne ou un contrôle d’édition enrichi appelle une fonction EditWordBreakProc pour rompre une ligne de texte.

Le type EDITWORDBREAKPROC définit un pointeur vers cette fonction de rappel. EditWordBreakProc est un espace réservé pour le nom de fonction défini par l’application.

Syntaxe

EDITWORDBREAKPROCA Editwordbreakproca;

int Editwordbreakproca(
  [in] LPSTR lpch,
  [in] int ichCurrent,
  [in] int cch,
  [in] int code
)
{...}

Paramètres

[in] lpch

Type : LPTSTR

Pointeur vers le texte du contrôle d’édition.

[in] ichCurrent

Type : int

Index d’une position de caractère dans la mémoire tampon de texte qui identifie le point auquel la fonction doit commencer à rechercher un saut de mot.

[in] cch

Type : int

Nombre de TCHAR dans le texte de contrôle de modification. Pour le texte ANSI, il s’agit du nombre d’octets ; pour le texte Unicode, il s’agit du nombre de WCHAR.

[in] code

Type : int

Action à effectuer par la fonction de rappel. Ce paramètre peut prendre les valeurs suivantes.

Valeur Signification
WB_CLASSIFY
Récupère la classe de caractères et les indicateurs de saut lexical du caractère à la position spécifiée. Cette valeur est destinée à être utilisée avec des contrôles d’édition enrichis.
WB_ISDELIMITER
Vérifie si le caractère à la position spécifiée est un délimiteur.
WB_LEFT
Recherche le début d’un mot à gauche de la position spécifiée.
WB_LEFTBREAK
Recherche le délimiteur de fin de mot à gauche de la position spécifiée. Cette valeur est destinée à être utilisée avec des contrôles d’édition enrichis.
WB_MOVEWORDLEFT
Recherche le début d’un mot à gauche de la position spécifiée. Cette valeur est utilisée pendant le traitement des touches CTRL+GAUCHE. Cette valeur est destinée à être utilisée avec des contrôles d’édition enrichis.
WB_MOVEWORDRIGHT
Recherche le début d’un mot à droite de la position spécifiée. Cette valeur est utilisée pendant le traitement des touches CTRL+DROITE. Cette valeur est destinée à être utilisée avec des contrôles d’édition enrichis.
WB_RIGHT
Recherche le début d’un mot à droite de la position spécifiée. Cela est utile dans les contrôles d’édition alignés à droite.
WB_RIGHTBREAK
Recherche le délimiteur de fin de mot à droite de la position spécifiée. Cela est utile dans les contrôles d’édition alignés à droite. Cette valeur est destinée à être utilisée avec des contrôles d’édition enrichis.

Valeur retournée

Type : int

Si le paramètre code spécifie WB_ISDELIMITER, la valeur de retour est différente de zéro (TRUE) si le caractère à la position spécifiée est un délimiteur, ou zéro si ce n’est pas le cas. Si le paramètre code spécifie WB_CLASSIFY, la valeur de retour est la classe de caractères et les indicateurs de saut de mot du caractère à la position spécifiée. Sinon, la valeur de retour est un index au début d’un mot dans la mémoire tampon de texte.

Remarques

Un retour chariot suivi d’un flux de ligne doit être traité comme un mot unique par la fonction de rappel. Deux retours chariots suivis d’un saut de ligne doivent également être traités comme un seul mot.

Une application doit installer la fonction de rappel en spécifiant l’adresse de la fonction de rappel dans un message EM_SETWORDBREAKPROC .

Rich Edit 1.0 :Microsoft Rich Edit 1.0 transmet uniquement les caractères ANSI à EditWordBreakProc. Pour les contrôles d’édition enrichis, vous pouvez également utiliser le message EM_SETWORDBREAKPROCEX pour remplacer la procédure de saut de mot étendue par défaut par une fonction de rappel EditWordBreakProcEx . Cette fonction fournit des informations supplémentaires sur le texte, telles que le jeu de caractères.

Rich Edit 2.0 et versions ultérieures :Microsoft Rich Edit 2.0 et versions ultérieures transmet uniquement les caractères Unicode à EditWordBreakProc. Ainsi, une application ANSI convertit la chaîne Unicode fournie par Rich Edit à l’aide de WideCharToMultiByte, puis traduit les index de manière appropriée.

Notes

L’en-tête winuser.h définit EDITWORDBREAKPROC comme alias qui sélectionne automatiquement la version ANSI ou Unicode de cette fonction en fonction de la définition de la constante de préprocesseur UNICODE. La combinaison de l’utilisation de l’alias neutre en encodage avec du code qui n’est pas neutre en encodage peut entraîner des incompatibilités qui entraînent des erreurs de compilation ou d’exécution. Pour plus d’informations, consultez Conventions pour les prototypes de fonction.

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 winuser.h (inclure Windows.h)

Voir aussi

EM_FINDWORDBREAK

EM_SETWORDBREAKPROC

EM_SETWORDBREAKPROCEX

EditWordBreakProcEx

Autres ressources

Référence

SendMessage