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

ITextStoreACP::SetText メソッドは、テキストの選択を指定された文字位置に設定します。

構文

HRESULT SetText(
  [in]  DWORD         dwFlags,
  [in]  LONG          acpStart,
  [in]  LONG          acpEnd,
  [in]  const WCHAR   *pchText,
  [in]  ULONG         cch,
  [out] TS_TEXTCHANGE *pChange
);

パラメーター

[in] dwFlags

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

[in] acpStart

置換するテキストの開始文字の位置を指定します。

[in] acpEnd

置換するテキストの終了文字位置を指定します。 値が 1 の場合、このパラメーターは無視されます。

[in] pchText

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

[in] cch

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

[out] pChange

次のデータを 含むTS_TEXTCHANGE 構造体へのポインター。

意味
acpStart
テキストがドキュメントに挿入される前の開始アプリケーションの文字位置。
acpOldEnd
テキストが文書に挿入される前の終了位置。 この値は、挿入ポイントの acpStart と同じです。 この値が acpStart と異なる場合は、テキストの挿入前にテキストが選択されていました。
acpNewEnd
テキストの挿入後の終了位置。

戻り値

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

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

注釈

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

acpStart および acpEnd 文字の位置を文書の範囲外にすることはできません。

アプリケーションでは、このメソッドに応答して ITextStoreACPSink::OnTextChange メソッドを呼び出さないでください。

このメソッドは 、ITextStoreACP::SetSelection メソッドを呼び出して、変更するテキストを選択する必要があります。 ITextStoreACP::SetSelection メソッドが正常に実行された後、このメソッドは ITextStoreACP::InsertTextAtSelection メソッドを呼び出して、実際のテキスト変更を実行します。

要件

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

こちらもご覧ください

組成

ITextStoreACP

ITextStoreACPSink::OnTextChange

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

TS_TEXTCHANGE