Partager via


Méthode ITfReadOnlyProperty::EnumRanges (msctf.h)

Obtient une énumération de plages qui contiennent des valeurs uniques de la propriété dans la plage donnée.

Syntaxe

HRESULT EnumRanges(
  [in]  TfEditCookie  ec,
  [out] IEnumTfRanges **ppEnum,
  [in]  ITfRange      *pTargetRange
);

Paramètres

[in] ec

Contient un cookie de modification qui identifie le contexte de modification. Ceci est obtenu à partir de ITfDocumentMgr::CreateContext ou ITfEditSession::D oEditSession.

[out] ppEnum

Pointeur vers un pointeur d’interface IEnumTfRanges qui reçoit l’objet énumérateur. L’appelant doit libérer cet objet lorsqu’il n’est plus nécessaire.

[in] pTargetRange

Pointeur vers une interface ITfRange qui spécifie la plage à analyser pour rechercher des valeurs de propriété uniques. Ce paramètre est facultatif et peut être NULL. Pour plus d'informations, consultez la section Notes.

Valeur retournée

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

Valeur Description
S_OK
La méthode a réussi.
E_INVALIDARG
Un ou plusieurs paramètres ne sont pas valides.
E_OUTOFMEMORY
Un échec d’allocation de mémoire s’est produit.
E_FAIL
Une erreur non spécifiée s'est produite.
Note Si une application n’implémente pas ITextStoreACP::FindNextAttrTransition, ITfReadOnlyProperty::EnumRanges échoue avec E_FAIL.
 
TF_E_NOLOCK
Le contexte de modification identifié par ec n’a pas de verrou en lecture seule ou en lecture/écriture.

Notes

Note: Si une application n’implémente pas ITextStoreACP::FindNextAttrTransition, ITfReadOnlyProperty::EnumRanges échoue avec E_FAIL.

L’énumérateur obtenu par cette méthode contient une plage pour chaque valeur unique, y compris les valeurs vides, de la propriété spécifiée. Par exemple, une propriété de couleur hypothétique peut être appliquée au texte balisé suivant :


COLOR:      RR      GGGGGGGG
TEXT:  this is some colored text

Lorsque ITfReadOnlyProperty::EnumRanges est appelé avec pTargetRange défini sur cette plage, l’énumérateur contient cinq plages.

Index de plage Valeur de la propriété Color Texte de plage
0 <empty> « this »
1 R « is »
2 <empty> « certains »
3 G « colored »
4 <empty> "text"
 

Si pTargetRange a la valeur NULL, l’énumérateur commence et se termine par la première et la dernière plage qui contient une valeur de propriété non vide dans le contexte. La spécification de NULL pour pTargetRange dans l’exemple ci-dessus entraînerait un énumérateur avec trois plages.

Index de plage Valeur de la propriété Color Texte dans la plage
0 R « is »
1 <empty> « certains »
2 G « colored »
 

Les plages énumérées commencent et se terminent par les ancres de début et de fin de pTargetRange, même si l’une des deux ancres est positionnée au milieu d’une propriété.

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

IEnumTfRanges

ITfDocumentMgr::CreateContext

ITfEditSession::D oEditSession

ITfRange

ITfReadOnlyProperty