ITfRange::InsertEmbedded, méthode (msctf.h)

La méthode ITfRange::InsertEmbedded insère un objet à l’emplacement de l’ancre de début de la plage de texte.

Syntaxe

HRESULT InsertEmbedded(
  [in] TfEditCookie ec,
  [in] DWORD        dwFlags,
  [in] IDataObject  *pDataObject
);

Paramètres

[in] ec

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

[in] dwFlags

Champs de bits qui spécifient la façon dont l’insertion doit se produire. Si TF_IE_CORRECTION est défini, l’opération est une correction, afin que d’autres services de texte puissent conserver les données associées au texte d’origine.

[in] pDataObject

Pointeur vers l’objet de transfert de données à insérer.

Valeur retournée

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

Valeur Description
S_OK
La méthode a réussi.
E_NOTIMPL
L’application qui implémente n’expose pas d’objets incorporés dans son flux.
TF_E_COMPOSITION_REJECTED
Le propriétaire du contexte a rejeté une composition par défaut.
TF_E_FORMAT
Le propriétaire du contexte ne peut pas gérer le type d’objet spécifié.
TF_E_NOLOCK
La valeur du paramètre ec est un cookie non valide, ou l’appelant n’a pas de verrou en lecture seule.
TF_E_RANGE_NOT_COVERED
L’appelant a déjà une composition active, mais la plage est positionnée sur le texte non couvert par la composition.
TF_E_READONLY
Impossible de modifier le document ou l’emplacement de la plage.

Notes

Utilisez cette méthode pour insérer des objets dans le flux de texte, car le caractère d’espace réservé d’objet TF_CHAR_EMBEDDED ne peut pas être passé dans ITfRange::SetText. Cette méthode est modélisée d’après l’API du Presse-papiers OLE, avec des applications utilisant pDataObject comme un IDataObject retourné par OleGetClipboard.

Lorsqu’une plage couvre plusieurs régions, la méthode doit être appelée sur chaque région séparément. Sinon, la méthode risque d’échouer.

Par défaut, les services de texte démarrent et terminent une composition temporaire qui couvre la plage, pour s’assurer que les propriétaires de contexte reconnaissent systématiquement les compositions sur le texte modifié. Si le propriétaire de la composition rejette une composition par défaut, la méthode retourne TF_E_COMPOSITION_REJECTED. Les compositions par défaut sont créées uniquement si l’appelant n’en a pas déjà démarré une. Si l’appelant a une composition active, l’appel échoue.

Pour déterminer à l’avance si un propriétaire de contexte prend en charge l’insertion d’un objet particulier, utilisez ITfQueryEmbedded::QueryInsertEmbedded.

Spécifications

   
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

Idataobject

ITfDocumentMgr::CreateContext

ITfEditSession::D oEditSession

ITfRange

ITfRange::GetEmbedded

Constantes d’infrastructure diverses

Magasins de texte