テキスト オブジェクト モデル

このセクションには、Text Object Model (TOM) で使用されるプログラミング要素に関する情報が含まれています。

TOM は、テキスト操作インターフェイスの実質的なセットを定義します。 Microsoft Word やリッチ エディット コントロールなどのテキスト ソリューションでは、TOM 機能一式がサポートされています。 TOM は WordBasic (Word で使用されるプログラミング言語) の影響を大きく受け、Microsoft Visual Basic for Applications (VBA) から簡単に使用できます。 この互換性には、いくつかの利点があります。

  • コードは、あるソリューションから別のソリューションに非常に簡単に移行できます。
  • 1 つの言語を使用して、異なるテキスト エンジン間でテキスト情報を共有できます。
  • これにより、個別の低レベル Component Object Model (COM) インターフェイスと VBA インターフェイスと比較して、ドキュメントとコードの必要性が軽減されます。

ただし、C/C++ の目的では、より一般的で下位レベルの COM インターフェイスを使用するよりも効率が低下する可能性があります。

TOM は、主要なテキスト ソリューション、Word、およびリッチ エディット コントロール用に実装するインターフェイスの簡単なセットです。 ただし、テキストに重点を置くアプリケーションでは、TOM をサポートする編集コントロールにテキストを転送して TOM インターフェイスを提供することをお勧めします。 リッチ エディット コントロールは Microsoft オペレーティング システムに付属しているため、TOM 機能を取得するための標準的な手段です。

概要

トピック 内容
テキスト オブジェクト モデルについて 最上位レベルの Text Object Model (TOM) オブジェクトは、オブジェクト階層の下位にあるオブジェクトを作成および取得するためのメソッドを持つ ITextDocument インターフェイスによって定義されます。
テキスト オブジェクト モデルの使用 このドキュメントのコード サンプルでは、Text Object Model (TOM) の使用のさまざまな特徴を示します。

インターフェイス

トピック 内容
ITextDocument ITextDocument インターフェイスは TOM 最上位インターフェイスであり、アクティブかどうかに関係なく、ドキュメント内の任意のストーリーのアクティブな選択オブジェクトと範囲オブジェクトを取得します。 これによりアプリケーションは、次のことを実行できるようになります。
実装する場合
通常、アプリケーションは ITextDocument インターフェイスを実装しません。 リッチ エディット コントロールなどの Microsoft テキスト ソリューションは、TOM 実装 の一部として ITextDocument を実装します。
使用すべきとき
アプリケーションは、リッチ エディット コントロールから ITextDocument ポインターを取得できます。 これを行うには、EM_GETOLEINTERFACE メッセージを送信して、リッチ エディット コントロールから IRichEditOle オブジェクトを取得します。 次に、オブジェクトの IUnknown::QueryInterface メソッドを呼び出して、ITextDocument ポインターを取得します。
ITextFont TOM リッチ テキスト範囲属性には、デュアル インターフェイスである ITextFontITextPara のペアを介してアクセスされます。
ITextPara TOM リッチ テキスト範囲属性には、デュアル インターフェイスである ITextFontITextPara のペアを介してアクセスされます。
ITextRange ITextRange オブジェクトは、プログラムがストーリー内のテキストを選択し、そのテキストを調べたり変更したりできるようにする、強力な編集およびデータ バインディング ツールです。
ITextSelection テキスト選択は、選択範囲が強調表示されたテキスト範囲です。
ITextStoryRanges ITextStoryRanges インターフェイスの目的は、ITextDocument 内のストーリーを列挙することです。