Méthode ITfRange ::AdjustForInsert (msctf.h)

La méthode ITfRange ::AdjustForInsert développe ou contracte une plage de texte à ajuster pour l’insertion de texte.

Syntaxe

HRESULT AdjustForInsert(
  [in]  TfEditCookie ec,
  [in]  ULONG        cchInsert,
  [out] BOOL         *pfInsertOk
);

Paramètres

[in] ec

Modifier le cookie obtenu à partir de ITfDocumentMgr ::CreateContext ou ITfEditSession ::D oEditSession.

[in] cchInsert

Nombre de caractères du texte inséré. Ce nombre est utilisé dans un appel ultérieur à ITfRange ::SetText. Si le nombre de caractères est inconnu, 0 peut être utilisé.

[out] pfInsertOk

Pointeur vers un indicateur qui indique si le propriétaire du contexte acceptera (TRUE) ou rejettera (FALSE) l’insertion.

Valeur retournée

Cette méthode peut retourner l’une de ces valeurs.

Valeur Description
S_OK
La méthode a réussi.
E_FAIL
Échec de la méthode.
E_INVALIDARG
Un ou plusieurs paramètres ne sont pas valides.
E_NOTIMPL
L’application n’a pas pu remplacer la sélection.
TF_E_NOLOCK
La valeur dans le paramètre ec est un cookie non valide, ou l’appelant n’a pas de verrou en lecture seule.

Remarques

Cette méthode doit être utilisée pour préparer une plage pour lancer une nouvelle composition, avant le début de la modification. Il doit être utilisé uniquement lorsque le texte n’est pas inséré lors de la sélection actuelle. ITFInsertAtSelection :InsertTextAtSelection ou ITfInsertAtSelection ::InsertEmbeddedAtSelection sont les méthodes appropriées à utiliser lorsque du texte est inséré au niveau de la sélection actuelle.

Le propriétaire du contexte peut utiliser cette méthode pour conserver le comportement et maintenir une expérience utilisateur cohérente. Par exemple, certains caractères ou objets dans le contexte peuvent être conservés des modifications, ou le surtypage peut être pris en charge.

Cette méthode n’est pas nécessaire lors de la modification d’une composition existante. Il est acceptable d’appeler ITfRange ::SetText directement pour modifier le texte entré précédemment par l’appelant.

À la sortie, si *pfInsertOk est défini sur FALSE, un appel ultérieur à ITfRange ::SetText ou ITfRange ::InsertEmbedded avec cette plage est susceptible d’échouer. Sinon, *pfInsertOk est défini sur TRUE, et l’ancre de début de plage ou l’ancre de fin peut être repositionnée à la discrétion du propriétaire du contexte.

Configuration requise

Condition requise Valeur
Client minimal pris en charge Windows 2000 Professionnel [applications de bureau | Applications UWP]
Serveur minimal pris en charge Windows 2000 Server [applications de bureau | Applications UWP]
Plateforme cible Windows
En-tête msctf.h
DLL Msctf.dll
Composant redistribuable TSF 1.0 sur Windows 2000 Professionnel

Voir aussi

ITFInsertAtSelection :InsertTextAtSelection

ITfDocumentMgr ::CreateContext

ITfEditSession ::D oEditSession

ITfInsertAtSelection ::InsertEmbeddedAtSelection

ITfRange

ITfRange ::InsertEmbedded

ITfRange ::SetText

Magasins de texte