Freigeben über


ITextRange::D elete-Methode (tom.h)

Imitiert die ENTF- und RÜCKTASTEn mit und ohne gedrückte STRG-TASTE.

Syntax

HRESULT Delete(
  long Unit,
  long Count,
  long *pDelta
);

Parameter

Unit

Typ: long

Zu verwendende Einheit. Die Einheit kann tomCharacter (der Standardwert) oder tomWord sein.

Count

Typ: long

Anzahl der zu löschenden Einheiten. Wenn Count= 0 (Null) ist, wird nur der Text im Bereich gelöscht. Wenn Count größer als 0 (null) ist, verhält sich ITextRange::D elete so, als ob die DELETE-Taste gedrückt wurde Anzahl mal. Wenn Count kleiner als 0 (null) ist, verhält es sich so, als ob die BACKSPACE-TASTE gedrückt wurde Anzahl mal. Der Standardwert ist 1. Weitere Informationen finden Sie in den Hinweisen.

pDelta

Typ: long*

Die Anzahl der gelöschten Einheiten. Sie kann Null sein. Der pDelta-Parameter ist gleich der Anzahl der gelöschten Einheitenfestgelegt. Das Löschen des Texts in einem nicht entgenerten Bereich zählt als eine Einheit.

Rückgabewert

Typ: HRESULT

Diese Methode gibt einen HRESULT-Wert zurück. Bei erfolgreicher Ausführung wird S_OK zurückgegeben. Andernfalls wird einer der folgenden Werte zurückgegeben. Weitere Informationen zu COM-Fehlercodes finden Sie unter Fehlerbehandlung in COM.

Rückgabecode Beschreibung
E_ACCESSDENIED
Text ist schreibgeschützt.
S_FALSE
Fehler aus einem anderen Grund.

Hinweise

Wenn Count = 0 (Null) ist, löscht diese Methode den Text im Bereich, d. h., sie löscht nichts, wenn der Bereich nur eine Einfügemarke ist.

Wenn Count nicht 0 (null) ist und der Bereich eine Einfügemarke ist (d.a. degeneriert), | Anzahl| (absoluter Wert von Count) Einheitenwerden in der logischen Richtung gelöscht, die durch das Vorzeichen von Count angegeben wird, wobei ein positiver Wert die Richtung zum Ende der Geschichte und ein negativer Wert zum Anfang der Geschichte ist.

Wenn Count nicht null ist und der Bereich nicht degeneriert ist (enthält Text), wird der Text im Bereich gelöscht (unabhängig von den Werten von Unit und Count), wodurch eine Einfügemarke erstellt wird. Dann | Anzahl| - 1 Einheitenwerden in der logischen Richtung gelöscht, die durch das Vorzeichen Anzahl angegeben wird.

Der Text im Bereich kann auch gelöscht werden, indem dem Bereich eine NULL-Zeichenfolge zugewiesen wird (ausführende Anweisung r = where are is the range). Für ITextRange::D elete ist jedoch keine Zuweisung eines BSTR erforderlich.

Das Löschen der Absatzendemarkierung (CR) führt zu einem besonderen Verhalten der Benutzeroberfläche von Microsoft Word. Vier Fälle sind von besonderem Interesse:

  • Wenn Sie nur die CR löschen, aber der Absatz Text enthält, wird die CR gelöscht, und der folgende Absatz erhält die gleiche Absatzformatierung wie der aktuelle Absatz.
  • Wenn Sie die CR sowie einige, aber nicht alle Zeichen im folgenden Absatz löschen, erhalten die aus dem aktuellen Absatz übrig gebliebenen Zeichen die Absatzformatierung des folgenden Absatzes.
  • Wenn Sie bis zum Ende eines Absatzes auswählen, aber nicht den gesamten Absatz, wird die CR nicht gelöscht.
  • Wenn Sie den gesamten Absatz löschen (von Anfang bis cr), löschen Sie auch die CR (es sei denn, es handelt sich um die endgültige CR in der Datei).

Anforderungen

Anforderung Wert
Unterstützte Mindestversion (Client) Windows Vista [nur Desktop-Apps]
Unterstützte Mindestversion (Server) Windows Server 2003 [nur Desktop-Apps]
Zielplattform Windows
Kopfzeile tom.h
DLL Msftedit.dll

Siehe auch

Konzept

ITextRange

Referenz

Textobjektmodell