ITextStoreAnchor::SetText メソッド (textstor.h)

ITextStoreAnchor::SetText メソッドは、指定された 2 つのアンカー位置の間でテキストの選択を設定します。

構文

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

パラメーター

[in] dwFlags

TS_ST_CORRECTIONの値に設定すると、テキストは既存のコンテンツの変換 (修正) になり、ファイル データや言語識別子などの特殊なテキスト マークアップ情報 (メタデータ) が保持.wav。 クライアントは、保持するマークアップ情報の種類を定義します。

[in] paStart

置換するテキスト範囲の先頭にあるアンカーへのポインター。

[in] paEnd

置換するテキスト範囲の末尾にあるアンカーへのポインター。 必ず paStart と同じ位置に従うか、同じ位置に配置する必要があります。

[in] pchText

置換テキストへのポインター。 テキストの文字数は cch パラメーターで指定されているため、テキスト文字列を NULL で終える必要はありません。

[in] cch

置換テキストの文字数を指定します。

戻り値

このメソッドは、これらの値のいずれかを返すことができます。

説明
S_OK
メソッドは正常に実行されました。
E_FAIL
メソッドは、アンカー paStart または paEnd の 1 つをインスタンス化できませんでした。
TS_E_INVALIDPOS
paStart または paEnd の場所は、ドキュメント テキストの外部にあります。
TS_E_NOLOCK
呼び出し元に読み取り/書き込みロックがありません。
TS_E_READONLY
ドキュメントは読み取り専用です。 コンテンツは変更できません。
TS_E_REGION
領域境界を越えてテキストを変更しようとしました。

注釈

アプリケーションでは、最初に ITextStoreAnchor::InsertTextAtSelection を使用してコンポジションを開始する必要があります。 ITextStoreAnchor::SetText は、既存のコンポジション内でのみ使用する必要があります。 SetText が呼び出された時点でアクティブなコンポジションがない場合、TSF マネージャーは SetText の呼び出しをラップするのに十分な長さだけのコンポジションを作成します。

呼び出し元は、 ITextStoreAnchor::RequestLock を介して取得された書き込みロックを保持する必要があります。 それ以外の場合、 ITextStoreAnchor::SetText はTS_E_NOLOCKで失敗します。

paStartpaEnd と同じ場所にある場合、操作は挿入であり、既存のテキストは削除されません。

TS_CHAR_EMBEDDEDこのメソッドに渡すことはできません。 埋め込みオブジェクトの場合は、代わりに ITextStoreAnchor::InsertEmbedded を使用します。

このメソッドは、置き換えられたテキストの範囲が任意の領域境界をカバーする場合に失敗します。 代わりに、呼び出し元は、リージョンごとに 1 つずつ、 メソッドを複数呼び出す必要があります。

要件

要件
サポートされている最小のクライアント Windows 2000 Professional [デスクトップ アプリ |UWP アプリ]
サポートされている最小のサーバー Windows 2000 Server [デスクトップ アプリ |UWP アプリ]
対象プラットフォーム Windows
ヘッダー textstor.h
[DLL] Msctf.dll
再頒布可能パッケージ Windows 2000 Professional 上の TSF 1.0

こちらもご覧ください

組成

埋め込みオブジェクト

ITextStoreAnchor

ITextStoreAnchor::InsertEmbedded

ITextStoreAnchor::RequestLock

ITextStoreAnchorSink::OnTextChange

その他のテキスト ストア定数