共用方式為


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 取得從文件開頭到 TextPoint 物件的字元位移 (Offset),以 1 起始。
公用屬性 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 命名空間