次の方法で共有


TextPoint インターフェイス

テキスト ドキュメント内のテキストの位置を表します。

名前空間:  EnvDTE
アセンブリ:  EnvDTE (EnvDTE.dll 内)

構文

'宣言
<GuidAttribute("7F59E94E-4939-40D2-9F7F-B7651C25905D")> _
Public Interface TextPoint
[GuidAttribute("7F59E94E-4939-40D2-9F7F-B7651C25905D")]
public interface TextPoint
[GuidAttribute(L"7F59E94E-4939-40D2-9F7F-B7651C25905D")]
public interface class TextPoint
[<GuidAttribute("7F59E94E-4939-40D2-9F7F-B7651C25905D")>]
type TextPoint =  interface end
public interface TextPoint

TextPoint 型で公開されるメンバーは以下のとおりです。

プロパティ

  名前 説明
パブリック プロパティ AbsoluteCharOffset インデックス番号が 1 から始まる、ドキュメントの先頭から TextPoint オブジェクトまでの文字オフセットを取得します。
パブリック プロパティ AtEndOfDocument オブジェクトがドキュメントの末尾にあるかどうかを示す値を取得します。
パブリック プロパティ AtEndOfLine オブジェクトが行末にあるかどうかを示す値を取得します。
パブリック プロパティ AtStartOfDocument オブジェクトがドキュメントの先頭にあるかどうかを示す値を取得します。
パブリック プロパティ AtStartOfLine オブジェクトが行頭にあるかどうかを示す値を取得します。
パブリック プロパティ CodeElement TextPoint の位置にあるコード要素を返します。
パブリック プロパティ DisplayColumn 現在表示されている、TextPoint オブジェクトを含む列の数を取得します。
パブリック プロパティ DTE トップ レベルの機能拡張オブジェクトを取得します。
パブリック プロパティ Line オブジェクトの行番号を取得します。
パブリック プロパティ LineCharOffset オブジェクトの文字オフセットを取得します。
パブリック プロパティ LineLength オブジェクトを含む行の文字数を取得します。ただし、改行文字は除きます。
パブリック プロパティ Parent TextPoint オブジェクトの直接の親オブジェクトを取得します。

このページのトップへ

メソッド

  名前 説明
パブリック メソッド CreateEditPoint 呼び出し元オブジェクトの位置に EditPoint オブジェクトを作成して返します。
パブリック メソッド EqualTo 指定したポイントのオブジェクトの AbsoluteCharOffset プロパティの値が、呼び出しオブジェクトの TextPoint オブジェクトの値に等しいかどうかを返します。
パブリック メソッド GreaterThan 呼び出しオブジェクトの AbsoluteCharOffset プロパティの値が、指定したポイントのオブジェクトの値より大きいかどうかを示します。
パブリック メソッド LessThan 呼び出されたオブジェクトの AbsoluteCharOffset プロパティの値が、指定したオブジェクトの値より小さいかどうかを示します。
パブリック メソッド TryToShow テキスト ポイントの位置の表示を試みます。

このページのトップへ

解説

TextPoint オブジェクトを使用すると、ドキュメント内の位置を検索できます。TextPoint オブジェクトのプロパティを使用して、テキストを次の方法で検索できます。

  • [行番号]

  • 行内の文字数

  • ドキュメントの先頭からの文字の絶対位置

  • 表示列

TextPoint オブジェクトは EditPoint オブジェクトに似ていますが、テキスト バッファーのデータではなく、コード エディターに表示されているテキストを操作する点が異なります。ドキュメント内のテキストは、ワード ラップや仮想空間などのグローバル エディターの状態の影響を受けますが、テキスト バッファーは影響を受けません。

TextPoint オブジェクトは、ドキュメントを編集するときに、周囲のテキストに関連して移動することはありません。つまり、テキスト ポイントの前にテキストを挿入すると、その AbsoluteCharOffset プロパティの値がインクリメントされ、ドキュメントの下方向にあるテキスト ポイントの新しい位置が反映されます。複数の TextPoint オブジェクトが同じ位置にあるときに、EditPoint オブジェクトを使用して新しいテキストを挿入すると、挿入した文字はすべての TextPoint オブジェクト (テキストの挿入に使用したオブジェクトは除く) の右側に配置されます。

TextDocument が読み取り専用の場合、TextDocument オブジェクトの変更を試みるすべての操作は失敗します。

Sub TextPointExample()
   ' Comments a region of code.
   Dim selection As TextSelection
   selection = dte.ActiveDocument.selection()
   Dim Start As Editpoint
   Start = selection.TopPoint.CreateEditPoint()
   Dim endpt As TextPoint
   endpt = selection.BottomPoint
      
   Dim undoObj As UndoContext = dte.UndoContext
   undoobj.Open("Comment Region")
   Do While (Start.LessThan(endpt))
      Start.Insert("//")
      Start.LineDown()
      Start.StartOfLine()
   Loop
   undoobj.Close()
End Sub

参照

関連項目

EnvDTE 名前空間