Freigeben über


ITextStoreAnchor::SetText-Methode (textstor.h)

Die ITextStoreAnchor::SetText-Methode legt die Textauswahl zwischen zwei angegebenen Ankerpositionen fest.

Syntax

HRESULT SetText(
  [in] DWORD       dwFlags,
  [in] IAnchor     *paStart,
  [in] IAnchor     *paEnd,
  [in] const WCHAR *pchText,
  [in] ULONG       cch
);

Parameter

[in] dwFlags

Bei Festlegung auf den Wert von TS_ST_CORRECTION ist der Text eine Transformation (Korrektur) vorhandener Inhalte, und alle speziellen Textmarkierungsinformationen (Metadaten) werden beibehalten, z. B. .wav Dateidaten oder ein Sprachbezeichner. Der Client definiert den Typ der Markupinformationen, die aufbewahrt werden sollen.

[in] paStart

Zeiger auf den Anker am Anfang des zu ersetzenden Textbereichs.

[in] paEnd

Zeiger auf den Anker am Ende des zu ersetzenden Textbereichs. Muss immer an der gleichen Position wie paStart folgen oder sich befinden.

[in] pchText

Zeiger auf den Ersetzungstext. Die Textzeichenfolge muss nicht null beendet sein, da die Textzeichenanzahl im cch-Parameter angegeben ist.

[in] cch

Gibt die Anzahl der Zeichen im Ersatztext an.

Rückgabewert

Diese Methode kann einen dieser Werte zurückgeben.

Wert BESCHREIBUNG
S_OK
Die Methode war erfolgreich.
E_FAIL
Die Methode konnte keinen der Anker paStart oder paEnd instanziieren.
TS_E_INVALIDPOS
Der Speicherort von paStart oder paEnd befindet sich außerhalb des Dokumenttexts.
TS_E_NOLOCK
Der Aufrufer verfügt nicht über eine Lese-/Schreibsperre.
TS_E_READONLY
Das Dokument ist schreibgeschützt. Inhalte können nicht geändert werden.
TS_E_REGION
Es wurde versucht, Text über eine Regionsgrenze hinweg zu ändern.

Hinweise

Anwendungen sollten eine Komposition zunächst mithilfe von ITextStoreAnchor::InsertTextAtSelection starten. ITextStoreAnchor::SetText sollte nur innerhalb einer vorhandenen Komposition verwendet werden. Wenn zum Zeitpunkt des Aufrufs von SetText keine aktive Komposition vorhanden ist, erstellt der TSF-Manager eine Komposition, die gerade so lange dauert, dass der Aufruf von SetText umschließt.

Aufrufer müssen eine Schreibsperre enthalten, die über ITextStoreAnchor::RequestLock abgerufen wurde. Andernfalls schlägt ITextStoreAnchor::SetText mit TS_E_NOLOCK fehl.

Wenn sich paStart an der gleichen Position wie paEnd befindet, ist der Vorgang ein Einfügevorgang, und kein vorhandener Text wird entfernt.

TS_CHAR_EMBEDDED können nicht an diese Methode übergeben werden. Verwenden Sie für eingebettete Objekte stattdessen ITextStoreAnchor::InsertEmbedded .

Diese Methode schlägt fehl, wenn der ersetzte Textbereich eine Bereichsgrenze abdeckt. Stattdessen sollten Aufrufer mehrere Aufrufe der -Methode ausführen, einen für jede Region.

Anforderungen

Anforderung Wert
Unterstützte Mindestversion (Client) Windows 2000 Professional [Desktop-Apps | UWP-Apps]
Unterstützte Mindestversion (Server) Windows 2000 Server [Desktop-Apps | UWP-Apps]
Zielplattform Windows
Kopfzeile textstor.h
DLL Msctf.dll
Verteilbare Komponente TSF 1.0 unter Windows 2000 Professional

Weitere Informationen

Kompositionen

Eingebettete Objekte

ITextStoreAnchor

ITextStoreAnchor::InsertEmbedded

ITextStoreAnchor::RequestLock

ITextStoreAnchorSink::OnTextChange

Sonstige Textspeicherkonstanten