TextPoint-Schnittstelle
Stellt eine Textposition in einem Textdokument dar.
Namespace: EnvDTE
Assembly: EnvDTE (in EnvDTE.dll)
Syntax
'Declaration
<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
Der TextPoint-Typ macht die folgenden Member verfügbar.
Eigenschaften
Name | Beschreibung | |
---|---|---|
AbsoluteCharOffset | Ruft das 1-basierte Zeichenoffset vom Anfang des Dokuments bis zum TextPoint-Objekt ab. | |
AtEndOfDocument | Ruft ab, ob sich das Objekt am Ende des Dokuments befindet. | |
AtEndOfLine | Ruft ab, ob sich das Objekt am Ende einer Zeile befindet. | |
AtStartOfDocument | Ruft ab, ob sich das Objekt am Anfang des Dokuments befindet. | |
AtStartOfLine | Ruft ab, ob sich das Objekt am Anfang einer Zeile befindet. | |
CodeElement | Gibt das Codeelement an der Position von TextPoint zurück. | |
DisplayColumn | Ruft die Nummer der derzeit angezeigten Spalte mit dem TextPoint-Objekt ab. | |
DTE | Ruft das Erweiterbarkeitsobjekt der obersten Ebene ab. | |
Line | Ruft die Zeilennummer des Objekts ab. | |
LineCharOffset | Ruft das Zeichenoffset des Objekts ab. | |
LineLength | Ruft die Anzahl der Zeichen in einer Zeile ab, in der das Objekt enthalten ist. Dabei werden Zeilenumbruchzeichen nicht berücksichtigt. | |
Parent | Ruft das unmittelbar übergeordnete Objekt eines TextPoint-Objekts ab. |
Zum Seitenanfang
Methoden
Name | Beschreibung | |
---|---|---|
CreateEditPoint | Erstellt ein EditPoint-Objekt an der Position des aufrufenden Objekts und gibt es zurück. | |
EqualTo | Gibt zurück, ob der Wert der AbsoluteCharOffset-Eigenschaft des angegebenen Point-Objekts gleich dem des aufrufenden TextPoint-Objekts ist. | |
GreaterThan | Gibt an, ob der Wert der AbsoluteCharOffset-Eigenschaft des aufrufenden Objekts größer als der des angegebenen Point-Objekts ist. | |
LessThan | Gibt an, ob der Wert der AbsoluteCharOffset-Eigenschaft des aufrufenden Objekts kleiner als der des angegebenen Objekts ist. | |
TryToShow | Hiermit wird versucht, die Position des Textpunkts anzuzeigen. |
Zum Seitenanfang
Hinweise
Mit dem TextPoint-Objekt können Sie Positionen in einem Dokument suchen. Mit den Eigenschaften des TextPoint-Objekts können Sie Text mithilfe folgender Angaben suchen:
Zeilennummern
Nummer des Zeichens in einer Zeile
Absolute Zeichenpositionen vom Anfang des Dokuments
Anzeigespalten
TextPoint-Objekte sind mit EditPoint-Objekten vergleichbar, sie werden jedoch auf in einem Code-Editor angezeigten Text angewendet und nicht auf Daten im Textpuffer. Dies liegt daran, dass globale Zustände des Editors, beispielsweise Zeilenumbrüche und virtuelle Bereiche, Einfluss auf Text in einem Dokument haben, jedoch nicht auf den Textpuffer.
Beim Bearbeiten eines Dokuments werden TextPoint-Objekte nicht relativ zum umgebenden Text verschoben. Wenn daher Text vor einem Textpunkt eingefügt wird, wird der Wert der zugehörigen AbsoluteCharOffset-Eigenschaft erhöht, um die neue Position weiter unten im Dokument widerzuspiegeln. Wenn sich mehrere TextPoint-Objekte an derselben Position befinden und ein EditPoint-Objekt zum Einfügen von neuem Text verwendet wird, befinden sich die neuen Zeichen mit Ausnahme des zum Einfügen des Textes verwendeten Objekts rechts von allen TextPoint-Objekten.
Jeder Versuch, ein TextDocument-Objekt zu ändern, schlägt fehl, solange das TextDocument schreibgeschützt ist.
Beispiele
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