TextEdit QML Type
Zeigt mehrere Zeilen bearbeitbaren, formatierten Text an. Mehr...
Eigenschaften
- activeFocusOnPress : bool
- baseUrl : url
- bottomPadding : real
- canPaste : bool
- canRedo : bool
- canUndo : bool
- color : color
- contentHeight : real
- contentWidth : real
- cursorDelegate : Component
- cursorPosition : int
- cursorRectangle : rectangle
- cursorSelection : QtQuick::TextSelection
(technology preview) - cursorVisible : bool
- effectiveHorizontalAlignment : enumeration
- font.bold : bool
- font.capitalization : enumeration
- font.contextFontMerging : bool
(since 6.8) - font.family : string
- font.features : object
(since 6.6) - font.hintingPreference : enumeration
- font.italic : bool
- font.kerning : bool
- font.letterSpacing : real
- font.pixelSize : int
- font.pointSize : real
- font.preferShaping : bool
- font.preferTypoLineMetrics : bool
(since 6.8) - font.strikeout : bool
- font.styleName : string
- font.underline : bool
- font.variableAxes : object
(since 6.7) - font.weight : int
- font.wordSpacing : real
- horizontalAlignment : enumeration
- hoveredLink : string
- inputMethodComposing : bool
- inputMethodHints : enumeration
- leftPadding : real
- length : int
- lineCount : int
- mouseSelectionMode : enumeration
- overwriteMode : bool
- padding : real
- persistentSelection : bool
- preeditText : string
- readOnly : bool
- renderType : enumeration
- rightPadding : real
- selectByKeyboard : bool
- selectByMouse : bool
- selectedText : string
- selectedTextColor : color
- selectionColor : color
- selectionEnd : int
- selectionStart : int
- tabStopDistance : real
- text : string
- textDocument : TextDocument
- textFormat : enumeration
- textMargin : real
- topPadding : real
- verticalAlignment : enumeration
- wrapMode : enumeration
Signale
- editingFinished()
- linkActivated(string link)
- linkHovered(string link)
- textEdited()
(since 6.9)
Methoden
- void append(string text)
- void clear()
- void copy()
- void cut()
- void deselect()
- string getFormattedText(int start, int end)
- string getText(int start, int end)
- void insert(int position, string text)
- bool isRightToLeft(int start, int end)
- string linkAt(real x, real y)
- void moveCursorSelection(int position, SelectionMode mode)
- void paste()
- int positionAt(int x, int y)
- rectangle positionToRectangle(position)
- void redo()
- string remove(int start, int end)
- void select(int start, int end)
- void selectAll()
- void selectWord()
- void undo()
Ausführliche Beschreibung
Das TextEdit-Element zeigt einen Block aus bearbeitbarem, formatiertem Text an.
Es kann sowohl einfachen Text als auch Rich-Text anzeigen. Beispiel:
TextEdit {
width: 240
text: "<b>Hello</b> <i>World!</i>"
font.family: "Helvetica"
font.pointSize: 20
color: "blue"
focus: true
}Wenn Sie „ focus “ auf „ true “ setzen, kann das TextEdit-Element den Tastaturfokus erhalten.
Beachten Sie, dass das TextEdit-Element weder Scrollen noch das Folgen des Cursors noch andere für ein „Look and Feel“ spezifische Verhaltensweisen implementiert. Um beispielsweise ein durch Wischen bedienbares Scrollen hinzuzufügen, das dem Cursor folgt:
Flickable {
id: flick
width: 300; height: 200;
contentWidth: edit.contentWidth
contentHeight: edit.contentHeight
clip: true
function ensureVisible(r)
{
if (contentX >= r.x)
contentX = r.x;
else if (contentX+width <= r.x+r.width)
contentX = r.x+r.width-width;
if (contentY >= r.y)
contentY = r.y;
else if (contentY+height <= r.y+r.height)
contentY = r.y+r.height-height;
}
TextEdit {
id: edit
width: flick.width
focus: true
wrapMode: TextEdit.Wrap
onCursorRectangleChanged: flick.ensureVisible(cursorRectangle)
}
}Ein bestimmtes „Look and Feel“ kann sanften Bildlauf verwenden (z. B. mit ` SmoothedAnimation`), eine sichtbare Bildlaufleiste haben oder eine Bildlaufleiste, die einblendet wird, um die Position anzuzeigen, usw.
Die Unterstützung für die Zwischenablage wird durch die Funktionen ` cut()`, ` copy()` und ` paste()` bereitgestellt. Text kann wie gewohnt mit der Maus ausgewählt werden, sofern ` selectByMouse ` nicht auf ` false` gesetzt ist; ebenso kann er über die Tastatur mit den Tastenkombinationen ` Shift+arrow ` ausgewählt werden, sofern ` selectByKeyboard ` nicht auf ` false` gesetzt ist. Um Text programmgesteuert auszuwählen, können Sie die Eigenschaften ` selectionStart ` und ` selectionEnd ` setzen oder die Funktionen ` selectAll()` bzw. ` selectWord()` verwenden.
Mit den Methoden „ positionAt()“ und „ positionToRectangle()“ können Sie zwischen Cursorpositionen (Zeichen ab dem Anfang des Dokuments) und Pixelpunkten umrechnen.
Siehe auch Text, TextInput, TextArea und Qt Quick Controls – Texteditor.
Dokumentation zu den Eigenschaften
activeFocusOnPress : bool
Ob der „ TextEdit “ bei einem Mausklick aktiv in den Fokus rücken soll. Standardmäßig ist diese Option auf „true“ gesetzt.
baseUrl : url
Diese Eigenschaft legt eine Basis-URL fest, die zum Auflösen relativer URLs innerhalb des Textes verwendet wird.
Der Standardwert ist die URL der QML-Datei, in der das Element „ TextEdit “ instanziiert wird.
Diese Eigenschaften legen den Abstand um den Inhalt herum fest. Dieser Abstand wird zusätzlich zu den Werten „ contentWidth “ und „ contentHeight “ reserviert.
canPaste : bool [read-only]
Gibt „true“ zurück, wenn die „ TextEdit “ beschreibbar ist und der Inhalt der Zwischenablage zum Einfügen in die „ TextEdit “ geeignet ist.
canRedo : bool [read-only]
Gibt „true“ zurück, wenn die „ TextEdit “ beschreibbar ist und es „ undone “-Operationen gibt, die rückgängig gemacht werden können.
canUndo : bool [read-only]
Gibt „true“ zurück, wenn die „ TextEdit “ beschreibbar ist und frühere Vorgänge vorhanden sind, die rückgängig gemacht werden können.
color : color
Die Textfarbe.
// green text using hexadecimal notation
TextEdit { color: "#00FF00" }// steelblue text using SVG color name
TextEdit { color: "steelblue" }contentHeight : real [read-only]
Gibt die Höhe des Textes zurück, einschließlich des Teils, der über die festgelegte Höhe hinausragt, falls der Text nicht in die festgelegte Höhe passt.
contentWidth : real [read-only]
Gibt die Breite des Textes zurück, einschließlich des Teils, der über die Breite hinausragt, der aufgrund unzureichender Zeilenumbrüche abgedeckt wird, wenn „ wrapMode “ gesetzt ist.
cursorDelegate : Component
Der Delegat für den Cursor im ` TextEdit`.
Wenn Sie für ein „ TextEdit “ einen „cursorDelegate“ festlegen, wird dieser Delegat anstelle des Standardcursors zum Zeichnen des Cursors verwendet. Eine Instanz des Delegats wird vom Textfeld erstellt und verwaltet, sobald ein Cursor benötigt wird, und die x- und y-Eigenschaften der Delegat-Instanz werden so gesetzt, dass sie sich einen Pixel vor der oberen linken Ecke des aktuellen Zeichens befinden.
Beachten Sie, dass das Stammelement der Delegatenkomponente ein von „ QQuickItem “ oder „ QQuickItem “ abgeleitetes Element sein muss.
cursorPosition : int
Die Position des Cursors in der Zeichenkette „ TextEdit “. Der Cursor befindet sich zwischen den Zeichen.
Hinweis: Die Zeichen beziehen sich in diesem Fall auf die Zeichenkette aus „ QChar “-Objekten, also auf 16-Bit-Unicode-Zeichen, und die Position wird als Index in dieser Zeichenkette betrachtet. Dies entspricht nicht unbedingt einzelnen Graphemen im Schriftsystem, da ein einzelnes Graphem durch mehrere Unicode-Zeichen dargestellt werden kann, wie beispielsweise bei Surrogatpaaren, sprachlichen Ligaturen oder diakritischen Zeichen.
cursorRectangle : rectangle [read-only]
Das Rechteck, in dem der Standard-Textcursor innerhalb des Textfelds dargestellt wird. Schreibgeschützt.
Die Position und Höhe eines benutzerdefinierten „ cursorDelegate “ werden automatisch an das „cursorRectangle“ angepasst, sobald sich dieses ändert. Die Breite des Delegaten wird von Änderungen am Cursor-Rechteck nicht beeinflusst.
cursorSelection : QtQuick::TextSelection [read-only, technology preview]
Diese Eigenschaft befindet sich in der Technologievorschau und kann sich noch ändern.
Diese Eigenschaft ist ein Objekt, das die Eigenschaften des aktuell ausgewählten Texts (sofern vorhanden) sowie des Textcursors bereitstellt.
Diese Eigenschaft wurde in Qt 6.7 eingeführt.
Siehe auch selectedText, selectionStart und selectionEnd.
cursorVisible : bool
Wenn diese Eigenschaft auf „true“ gesetzt ist, wird im Textfeld ein Cursor angezeigt.
Diese Eigenschaft wird gesetzt und zurückgesetzt, wenn das Textfeld den aktiven Fokus erhält, kann aber auch direkt gesetzt werden (nützlich beispielsweise, wenn ein KeyProxy Tastenbefehle an das Textfeld weiterleitet).
effectiveHorizontalAlignment : enumeration [read-only]
horizontalAlignment : enumeration
verticalAlignment : enumeration
Legt die horizontale und vertikale Ausrichtung des Textes innerhalb der Breite und Höhe des „ TextEdit “-Elements fest. Standardmäßig folgt die Textausrichtung der natürlichen Ausrichtung des Textes; so wird beispielsweise Text, der von links nach rechts gelesen wird, linksbündig ausgerichtet.
Gültige Werte für „ horizontalAlignment “ sind:
| Konstante | Beschreibung |
|---|---|
TextEdit.AlignLeft | Linksbündige Ausrichtung mit ungleichmäßigen Rändern auf der rechten Seite (Standard) |
TextEdit.AlignRight | Jede Zeile rechtsbündig ausrichten mit ungleichmäßigen Rändern auf der linken Seite |
TextEdit.AlignHCenter | Jede Zeile mittig ausrichten |
TextEdit.AlignJustify | Jede Zeile sowohl rechts als auch links ausrichten, wobei Wörter bei Bedarf aufgeteilt werden |
Gültige Werte für „ verticalAlignment “ sind:
| Konstante | Beschreibung |
|---|---|
TextEdit.AlignTop | Beginnt am oberen Rand des Elements (Standard) |
TextEdit.AlignBottom | Die letzte Zeile am unteren Rand ausrichten, die anderen Zeilen darüber |
TextEdit.AlignVCenter | vertikal zentrieren |
Bei Verwendung der angehängten Eigenschaft „ LayoutMirroring::enabled “ zum Spiegeln von Anwendungslayouts wird auch die horizontale Ausrichtung des Texts gespiegelt. Die Eigenschaft „ horizontalAlignment “ bleibt jedoch unverändert. Um die tatsächlich geltende horizontale Ausrichtung von „ TextEdit “ abzufragen, verwenden Sie die schreibgeschützte Eigenschaft „ effectiveHorizontalAlignment “.
font.bold : bool
Legt fest, ob die Schrift fett gesetzt ist.
font.capitalization : enumeration
Legt die Großschreibung des Textes fest.
| Konstante | Beschreibung |
|---|---|
Font.MixedCase | Es wird keine Änderung der Großschreibung vorgenommen |
Font.AllUppercase | Der Text wird so angepasst, dass er vollständig in Großbuchstaben dargestellt wird |
Font.AllLowercase | Der Text wird in Kleinbuchstaben dargestellt |
Font.SmallCaps | ändert den Text so, dass er in Kapitälchen dargestellt wird |
Font.Capitalize | ändert den Text so, dass das erste Zeichen jedes Wortes als Großbuchstabe dargestellt wird |
font.contextFontMerging : bool [since 6.8]
Wenn die ausgewählte Schriftart ein bestimmtes Zeichen nicht enthält, wählt Qt automatisch eine ähnlich aussehende Ersatzschriftart aus, die dieses Zeichen enthält. Standardmäßig erfolgt dies Zeichen für Zeichen.
Das bedeutet, dass in bestimmten seltenen Fällen viele verschiedene Schriftarten zur Darstellung einer Textzeichenfolge verwendet werden können, selbst wenn diese in derselben Schriftart geschrieben ist. Wenn „ contextFontMerging “ auf „true“ gesetzt wird, wird stattdessen versucht, die Ersatzschriftart zu finden, die mit der größten Teilmenge der Eingabezeichenfolge übereinstimmt. Dies ist bei Zeichenfolgen, in denen fehlende Glyphen vorkommen, rechenintensiver, kann jedoch zu konsistenteren Ergebnissen führen. Standardmäßig ist „ contextFontMerging “ auf „ false “ gesetzt.
Diese Eigenschaft wurde in Qt 6.8 eingeführt.
Siehe auch „ QFont::StyleStrategy “.
font.family : string
Legt den Familiennamen der Schriftart fest.
Bei der Schriftfamilie wird die Groß-/Kleinschreibung nicht berücksichtigt, und der Name kann optional einen Herstellerangabe enthalten, zum Beispiel „Helvetica [Cronyx]“. Wenn die Schriftfamilie von mehr als einem Hersteller angeboten wird und kein Hersteller angegeben ist, wird ein beliebiger Hersteller ausgewählt. Ist die Schriftfamilie nicht verfügbar, wird mithilfe des Algorithmus zur Schriftartzuordnung eine Schriftfamilie festgelegt.
font.features : object [since 6.6]
Wendet bei der inhaltsbasierten Textgestaltung ganzzahlige Werte auf bestimmte OpenType-Funktionen an. Dies ermöglicht einen erweiterten Zugriff auf den Prozess der Schriftgestaltung und kann zur Unterstützung von Schriftfunktionen genutzt werden, die ansonsten nicht von der API abgedeckt sind.
Die Schriftfunktionen werden durch eine Zuordnung von vierbuchstabigen Tags zu ganzzahligen Werten dargestellt. Dieser ganzzahlige Wert, der in den meisten Fällen zusammen mit dem Tag übergeben wird, stellt einen booleschen Wert dar: Der Wert Null bedeutet, dass die Funktion deaktiviert ist, und ein Wert ungleich Null bedeutet, dass sie aktiviert ist. Bei bestimmten Schriftfunktionen kann dies jedoch auch anders interpretiert werden. Wird der Wert beispielsweise auf die Funktion „ salt “ angewendet, handelt es sich um einen Index, der die zu verwendende stilistische Alternative angibt.
Die Schriftartfunktion „ frac “ wandelt beispielsweise diagonale Brüche, die durch einen Schrägstrich getrennt sind (wie z. B. „ 1/2 “), in eine andere Darstellung um. In der Regel wird dabei der gesamte Bruch in eine einzige Zeichenbreite „eingebacken“ (wie z. B. „ ½ “).
Wenn eine Schriftart die Funktion „ frac “ unterstützt, kann sie im Shaper wie im folgenden Code aktiviert werden:
Text {
text: "One divided by two is 1/2"
font.family: "MyFractionFont"
font.features: { "frac": 1 }
}In derselben Zuordnung können mehreren Funktionen Werte zugewiesen werden. Wenn Sie beispielsweise auch das Kerning für die Schriftart deaktivieren möchten, können Sie dies wie folgt explizit deaktivieren:
Text {
text: "One divided by two is 1/2"
font.family: "MyFractionFont"
font.features: { "frac": 1, "kern": 0 }
}Sie können die Schriftarteneigenschaften auch in einem Objekt zusammenfassen:
Text {
text: "One divided by two is 1/2"
font: {
family: "MyFractionFont"
features: { "frac": 1, "kern": 0 }
}
}Hinweis: Standardmäßig aktiviert oder deaktiviert Qt bestimmte Schriftfunktionen basierend auf anderen Schrift-Eigenschaften. Insbesondere wird die Funktion „ kern “ je nach der Eigenschaft „ font::kerning “ aktiviert bzw. deaktiviert. Darüber hinaus werden alle Ligatur-Funktionen (liga, clig,
dlig, hlig) werden deaktiviert, wenn „ font.letterSpacing “ gesetzt ist, jedoch nur für Schriftsysteme, in denen die Verwendung von Ligaturen rein kosmetischer Natur ist. Bei Schriftsystemen, in denen Ligaturen erforderlich sind, bleiben die Funktionen in ihrem Standardzustand. Die mit „ font.features “ festgelegten Werte überschreiben das Standardverhalten. Wenn beispielsweise „ "kern" “ auf 1 gesetzt ist, ist das Kerning immer aktiviert, unabhängig davon, ob die Eigenschaft „ font::kerning “ auf „false“ gesetzt ist. Ebenso
wenn sie auf „ 0 “ gesetzt ist, ist es immer deaktiviert.
Diese Eigenschaft wurde in Qt 6.6 eingeführt.
Siehe auch QFont::setFeature().
font.hintingPreference : enumeration
Legt die bevorzugte Hinting-Einstellung für den Text fest.
Dies ist ein Hinweis an das zugrunde liegende Text-Rendering-System, eine bestimmte Stufe der Hinting-Bearbeitung zu verwenden, und wird von den verschiedenen Plattformen unterschiedlich unterstützt. Weitere Details finden Sie in der Tabelle in der Dokumentation zu „ QFont::HintingPreference “.
Hinweis: Diese Eigenschaft wirkt sich nur aus, wenn sie zusammen mit dem Rendering-Typ „ Text.NativeRendering “ verwendet wird.
| Konstante | Beschreibung |
|---|---|
Font.PreferDefaultHinting | Verwendet den Standard-Hinting-Grad für die Zielplattform. |
Font.PreferNoHinting | Wenn möglich, wird der Text ohne Hinting der Glyphenkonturen gerendert. Das Textlayout ist typografisch korrekt und verwendet dieselben Metriken wie beispielsweise beim Drucken. |
Font.PreferVerticalHinting | Wenn möglich, wird der Text ohne horizontales Hinting gerendert, die Glyphen werden jedoch in vertikaler Richtung am Pixelraster ausgerichtet. Der Text erscheint auf Displays, deren Dichte für eine präzise Darstellung der Glyphen zu gering ist, schärfer. Da die horizontalen Metriken der Glyphen jedoch nicht hinted sind, lässt sich das Textlayout auf Geräte mit höherer Dichte (wie z. B. Drucker) skalieren, ohne dass Details wie Zeilenumbrüche beeinträchtigt werden. |
Font.PreferFullHinting | Wenn möglich, rendern Sie Text mit Hinting sowohl in horizontaler als auch in vertikaler Richtung. Der Text wird angepasst, um die Lesbarkeit auf dem Zielgerät zu optimieren; da die Metriken jedoch von der Zielgröße des Textes abhängen, werden die Positionen der Glyphen, Zeilenumbrüche und andere typografische Details nicht skaliert, was bedeutet, dass ein Textlayout auf Geräten mit unterschiedlichen Pixeldichten unterschiedlich aussehen kann. |
font.italic : bool
Legt fest, ob die Schriftart einen kursiven Stil hat.
font.kerning : bool
Aktiviert oder deaktiviert die OpenType-Funktion „Kerning“ bei der Gestaltung des Textes. Die Deaktivierung dieser Funktion kann die Leistung beim Erstellen oder Ändern des Textes verbessern, geht jedoch zu Lasten einiger optischer Merkmale. Der Standardwert lautet „ true “.
Text { text: "OATS FLAVOUR WAY"; font.kerning: false }font.letterSpacing : real
Legt den Zeichenabstand für die Schriftart fest.
Der Buchstabenabstand verändert den Standardabstand zwischen den einzelnen Buchstaben der Schriftart. Ein positiver Wert vergrößert den Buchstabenabstand um die entsprechende Pixelanzahl; ein negativer Wert verringert den Abstand.
font.pixelSize : int
Legt die Schriftgröße in Pixeln fest.
Die Verwendung dieser Funktion macht die Schriftart geräteabhängig. Verwenden Sie „ TextEdit::font.pointSize “, um die Schriftgröße geräteunabhängig festzulegen.
font.pointSize : real
Legt die Schriftgröße in Punkten fest. Die Punktgröße muss größer als null sein.
font.preferShaping : bool
Manchmal wendet eine Schriftart komplexe Regeln auf eine Reihe von Zeichen an, um diese korrekt darzustellen. In einigen Schriftsystemen, wie beispielsweise den brahmischen Schriften, ist dies erforderlich, damit der Text lesbar ist, während es beispielsweise bei der lateinischen Schrift lediglich ein kosmetisches Merkmal ist. Durch Setzen der Eigenschaft „ preferShaping “ auf „false“ werden alle derartigen Funktionen deaktiviert, wenn sie nicht benötigt werden, was in den meisten Fällen zu einer Leistungssteigerung führt.
Der Standardwert ist „ true “.
Text { text: "Some text"; font.preferShaping: false }font.preferTypoLineMetrics : bool [since 6.8]
Konkurrierende Sätze vertikaler Linienmetriken, die die Werte „ ascent “, „ descent “ und „ leading “ der Schriftart liefern. Diese werden oft als „Win-Metriken“ (Windows) und „Typo-Metriken“ (typografische Metriken) bezeichnet. Während die Spezifikation die Verwendung der „ typo “-Metriken für den Zeilenabstand empfiehlt, bevorzugen viele Anwendungen die „ win “-Metriken, es sei denn, das Flag „ USE_TYPO_METRICS “ ist im Feld „fsSelection“ der Schriftart gesetzt. Aus Gründen der Abwärtskompatibilität gilt dies auch für Qt-Anwendungen. Dies stellt kein Problem dar für Schriftarten, bei denen das Flag „ USE_TYPO_METRICS “ gesetzt ist, um anzugeben, dass die „ typo “-Metriken gültig sind, und auch nicht für Schriftarten, bei denen die „ win “-Metriken und die „ typo “-Metriken übereinstimmen. Bei bestimmten Schriftarten können die „ win “-Metriken jedoch größer sein als der bevorzugte Zeilenabstand, und das Flag „ USE_TYPO_METRICS “ ist möglicherweise versehentlich nicht gesetzt. Bei solchen Schriftarten kann die Einstellung „ font.preferTypoLineMetrics “ zu besseren Ergebnissen führen.
Standardmäßig ist „ preferTypoLineMetrics “ auf „ false “ gesetzt.
Diese Eigenschaft wurde in Qt 6.8 eingeführt.
Siehe auch „ QFont::StyleStrategy “.
font.strikeout : bool
Legt fest, ob die Schriftart einen Durchgestrichen-Stil aufweist.
font.styleName : string
Legt den Stilnamen der Schriftart fest.
Bei der Eingabe des Stilnamens wird die Groß-/Kleinschreibung nicht berücksichtigt. Wenn dieser festgelegt ist, wird die Schriftart anhand des Stilnamens statt anhand der Schriftart-Eigenschaften „ font.weight “, „ font.bold “ und „ font.italic “ zugeordnet.
font.underline : bool
Legt fest, ob der Text unterstrichen ist.
font.variableAxes : object [since 6.7]
Wendet Gleitkommawerte auf variable Achsen in variablen Schriftarten an.
Variable Schriftarten bieten die Möglichkeit, mehrere Varianten (mit unterschiedlichen Strichstärken, Breiten oder Stilen) in derselben Schriftartdatei zu speichern. Die Varianten werden als Gleitkommawerte für einen vordefinierten Satz von Parametern angegeben, die als „variable Achsen“ bezeichnet werden. Bestimmte Instanzen werden in der Regel vom Schriftdesigner benannt und können in Qt genau wie herkömmliche Unterfamilien mit setStyleName() ausgewählt werden.
In manchen Fällen ist es auch sinnvoll, beliebige Werte für die verschiedenen Achsen anzugeben. Wenn eine Schriftart beispielsweise die Unterfamilien „Regular“ und „Bold“ enthält, möchten Sie vielleicht eine Strichstärke dazwischen. Dies könnten Sie dann manuell anfordern, indem Sie einen benutzerdefinierten Wert für die Achse „wght“ in der Schriftart angeben.
Text {
text: "Foobar"
font.family: "MyVariableFont"
font.variableAxes: { "wght": (Font.Normal + Font.Bold) / 2.0 }
}Wenn die „wght“-Achse von der Schriftart unterstützt wird und der angegebene Wert innerhalb des definierten Bereichs liegt, wird eine Schriftart bereitgestellt, die der Stärke 550,0 entspricht.
Es gibt einige Standardachsen, die von vielen Schriftarten bereitgestellt werden, wie beispielsweise „wght“ (Strichstärke), „wdth“ (Breite), „ital“ (Kursiv) und „opsz“ (optische Größe). Für jede dieser Achsen sind in der Schriftart selbst individuelle Bereiche definiert. Beispielsweise kann „wght“ von 100 bis 900 reichen (QFont::Thin bis QFont::Black), während „ital“ von 0 bis 1 reichen kann (von nicht kursiv bis vollständig kursiv).
Eine Schriftart kann auch benutzerdefinierte Achsen festlegen; die einzige Einschränkung besteht darin, dass der Name die Anforderungen an eine „ QFont::Tag “ (eine Folge von vier Latin-1-Zeichen) erfüllen muss.
Standardmäßig sind keine variablen Achsen festgelegt.
Hinweis: Unter Windows werden variable Achsen nicht unterstützt, wenn das optionale GDI-Schriftart-Backend verwendet wird.
Diese Eigenschaft wurde in Qt 6.7 eingeführt.
Siehe auch „ QFont::setVariableAxis“ ().
font.weight : int
Die gewünschte Strichstärke der Schriftart. Die angegebene Strichstärke muss eine ganze Zahl zwischen 1 und 1000 sein oder einem der vordefinierten Werte entsprechen:
| Konstante | Beschreibung |
|---|---|
Font.Thin | 100 |
Font.ExtraLight | 200 |
Font.Light | 300 |
Font.Normal | 400 (Standard) |
Font.Medium | 500 |
Font.DemiBold | 600 |
Font.Bold | 700 |
Font.ExtraBold | 800 |
Font.Black | 900 |
font.wordSpacing : real
Legt den Wortabstand für die Schriftart fest.
Der Wortabstand verändert den Standardabstand zwischen einzelnen Wörtern. Ein positiver Wert vergrößert den Wortabstand um die entsprechende Pixelanzahl, während ein negativer Wert den Abstand zwischen den Wörtern entsprechend verringert.
hoveredLink : string [read-only]
Diese Eigenschaft enthält die Link-Zeichenkette, wenn der Benutzer mit der Maus über einen im Text eingebetteten Link fährt. Der Link muss im Rich-Text- oder HTML-Format vorliegen, und die Link-Zeichenkette ermöglicht den Zugriff auf den jeweiligen Link.
Siehe auch „ linkHovered “ und „ linkAt()“.
inputMethodComposing : bool [read-only]
Diese Eigenschaft gibt an, ob im „ TextEdit “ eine Teileingabe aus einer Eingabemethode vorliegt.
Während der Erstellung einer Eingabe kann sich eine Eingabemethode auf Maus- oder Tastenereignisse des „ TextEdit “ stützen, um den Teiltext zu bearbeiten oder zu übernehmen. Diese Eigenschaft kann verwendet werden, um zu bestimmen, wann Ereignisbehandler deaktiviert werden sollen, die den korrekten Betrieb einer Eingabemethode beeinträchtigen könnten.
inputMethodHints : enumeration
Liefert der Eingabemethode Hinweise zum erwarteten Inhalt des Textfelds und zu dessen Funktionsweise.
Der Wert ist eine bitweise Kombination von Flags oder „Qt.ImhNone“, wenn keine Hinweise festgelegt sind.
Flagge, die das Verhalten ändern, sind:
| Konstante | Beschreibung |
|---|---|
Qt.ImhHiddenText | Zeichen sollten ausgeblendet werden, wie es typischerweise bei der Eingabe von Passwörtern der Fall ist. |
Qt.ImhSensitiveData | Der eingegebene Text sollte von der aktiven Eingabemethode nicht in einem dauerhaften Speicher wie dem vorausschauenden Benutzerwörterbuch gespeichert werden. |
Qt.ImhNoAutoUppercase | Die Eingabemethode sollte nicht versuchen, am Satzende automatisch auf Großbuchstaben umzuschalten. |
Qt.ImhPreferNumbers | Zahlen werden bevorzugt (sind aber nicht erforderlich). |
Qt.ImhPreferUppercase | Großbuchstaben werden bevorzugt (sind aber nicht erforderlich). |
Qt.ImhPreferLowercase | Kleinbuchstaben werden bevorzugt (sind aber nicht erforderlich). |
Qt.ImhNoPredictiveText | Verwenden Sie während der Eingabe keine Wortvorhersage (d. h. keine Wörterbuchabfrage). |
Qt.ImhDate | Der Texteditor fungiert als Datumsfeld. |
Qt.ImhTime | Der Texteditor fungiert als Zeitfeld. |
Flagge, die die Eingabe einschränken (Ausschlussflaggen), sind:
| Konstante | Beschreibung |
|---|---|
Qt.ImhDigitsOnly | Es sind nur Ziffern zulässig. |
Qt.ImhFormattedNumbersOnly | Es dürfen nur Zahlen eingegeben werden. Dazu gehören Dezimalpunkt und Minuszeichen. |
Qt.ImhUppercaseOnly | Es dürfen nur Großbuchstaben eingegeben werden. |
Qt.ImhLowercaseOnly | Es dürfen nur Kleinbuchstaben eingegeben werden. |
Qt.ImhDialableCharactersOnly | Es sind nur Zeichen erlaubt, die für die Telefonwahl geeignet sind. |
Qt.ImhEmailCharactersOnly | Es sind nur Zeichen zulässig, die für E-Mail-Adressen geeignet sind. |
Qt.ImhUrlCharactersOnly | Es sind nur Zeichen zulässig, die für URLs geeignet sind. |
Masken:
| Konstante | Beschreibung |
|---|---|
Qt.ImhExclusiveInputMask | Diese Maske liefert einen Wert ungleich Null, wenn eines der exklusiven Flags verwendet wird. |
length : int [read-only]
Gibt die Gesamtzahl der Klartextzeichen im Element „ TextEdit “ zurück.
Da diese Zahl keine Formatierungsmarkierungen enthält, stimmt sie möglicherweise nicht mit der Länge der Zeichenfolge überein, die von der Eigenschaft „ text “ zurückgegeben wird.
Diese Eigenschaft kann schneller sein als die Abfrage der Länge über die Eigenschaft „ text “, da sie kein Kopieren oder Konvertieren der internen Zeichenfolgendaten des „ TextEdit “ erfordert.
lineCount : int [read-only]
Gibt die Gesamtzahl der Zeilen im Element „ TextEdit “ zurück.
mouseSelectionMode : enumeration
Legt fest, wie Text mit der Maus ausgewählt werden soll.
| Konstante | Beschreibung |
|---|---|
TextEdit.SelectCharacters | (Standard) Die Auswahl wird um einzelne Zeichen erweitert. |
TextEdit.SelectWords | Die Auswahl wird um ganze Wörter erweitert. |
Diese Eigenschaft gilt nur, wenn „ selectByMouse “ auf „true“ gesetzt ist.
overwriteMode : bool
Ob der vom Benutzer eingegebene Text den vorhandenen Text überschreibt.
Wie bei vielen Texteditoren kann das Texteditor-Widget so konfiguriert werden, dass der vom Benutzer eingegebene neue Text in den vorhandenen Text eingefügt oder diesen überschreibt.
Wenn diese Eigenschaft auf „ true “ gesetzt ist, wird der vorhandene Text Zeichen für Zeichen durch den neuen Text überschrieben; andernfalls wird der Text an der Cursorposition eingefügt, wodurch der vorhandene Text verdrängt wird.
Standardmäßig ist diese Eigenschaft auf „ false “ gesetzt (neuer Text überschreibt keinen vorhandenen Text).
persistentSelection : bool
Ob die „ TextEdit “ die Auswahl sichtbar lassen soll, wenn sie den aktiven Fokus an ein anderes Element in der Szene verliert. Standardmäßig ist diese Option auf „false“ gesetzt.
preeditText : string [read-only]
Diese Eigenschaft enthält einen Teiltext, der über eine Eingabemethode eingegeben wurde.
Um die durch Vorhersagen erzeugten Teilsätze zu deaktivieren, setzen Sie das Flag „ Qt.ImhNoPredictiveText “ unter „ inputMethodHints “.
Siehe auch „ inputMethodHints “.
readOnly : bool
Gibt an, ob der Benutzer mit dem Element „ TextEdit “ interagieren kann. Ist diese Eigenschaft auf „true“ gesetzt, kann der Text nicht durch Benutzerinteraktion bearbeitet werden.
Standardmäßig ist diese Eigenschaft auf „false“ gesetzt.
renderType : enumeration
Den Standard-Rendering-Typ für diese Komponente überschreiben.
Unterstützte Darstellungsarten sind:
| Konstant | Beschreibung |
|---|---|
TextEdit.QtRendering | Der Text wird unter Verwendung eines skalierbaren Abstandsfelds für jedes Glyph gerendert. |
TextEdit.NativeRendering | Der Text wird mithilfe einer plattformspezifischen Technik gerendert. |
TextEdit.CurveRendering | Der Text wird mithilfe eines Kurvenrasterisierers gerendert, der direkt auf der Grafikhardware ausgeführt wird. (Eingeführt in Qt 6.7.0.) |
Wählen Sie „ TextEdit.NativeRendering “, wenn Sie möchten, dass der Text auf der Zielplattform wie nativ dargestellt wird, und keine erweiterten Funktionen wie die Transformation des Texts benötigen. Die Verwendung solcher Funktionen in Kombination mit dem Rendering-Typ „NativeRendering“ führt zu schlechten und manchmal verpixelten Ergebnissen.
Sowohl „ TextEdit.QtRendering “ als auch „ TextEdit.CurveRendering “ sind hardwarebeschleunigte Verfahren. „ QtRendering “ ist das schnellere der beiden, verbraucht jedoch mehr Speicher und weist bei großen Größen Darstellungsartefakte auf. „ CurveRendering “ sollte als Alternative in Betracht gezogen werden, wenn „ QtRendering “ keine guten visuellen Ergebnisse liefert oder wenn die Reduzierung des Grafikspeicherverbrauchs Priorität hat.
Der Standard-Rendering-Typ wird durch ` QQuickWindow::textRenderType()` festgelegt.
selectByKeyboard : bool
Standardmäßig „true“, wenn der Editor bearbeitbar ist, und „false“, wenn er schreibgeschützt ist.
Ist der Wert „true“, kann der Benutzer Text über die Tastatur auswählen, auch wenn der Editor schreibgeschützt ist. Ist der Wert „false“, kann der Benutzer keinen Text über die Tastatur auswählen, auch wenn der Editor bearbeitbar ist.
Siehe auch „ readOnly “.
selectByMouse : bool
Seit Qt 6.4 ist die Standardeinstellung „ true “.
Wenn „ true “ eingestellt ist, kann der Benutzer Text wie gewohnt mit der Maus auswählen.
Hinweis: In Versionen vor 6.4 war die Standardeinstellung „ false “; wenn Sie diese Eigenschaft jedoch aktiviert hatten, konnten Sie Text auf einem Touchscreen auch durch Ziehen mit dem Finger auswählen. Dies beeinträchtigte das Flicking, wenn „ TextEdit “ innerhalb eines „Flickable“ verwendet wurde. Allerdings unterstützt Qt seit Version 5.7 über „ QInputMethod “ Textmarkierungsgriffe auf mobilen Plattformen sowie auf eingebetteten Plattformen, die „ Qt Virtual Keyboard “ verwenden. Die meisten Benutzer wären überrascht, wenn das Ziehen mit dem Finger Text auswählen würde, anstatt durch Wischen über das übergeordnete „Flickable“ zu navigieren. Daher bedeutet `selectByMouse` nun tatsächlich das, was der Name sagt: Wenn ` true` gesetzt ist, können Sie Text nur mit der Maus durch Ziehen auswählen, während von der Plattform erwartet wird, dass sie auf Touchscreens Auswahlgriffe bereitstellt. Wenn diese Änderung nicht zu Ihrer Anwendung passt, können Sie ` selectByMouse ` auf ` false` setzen oder eine ältere API-Version (z. B. ` import QtQuick 6.3`) importieren, um zum vorherigen Verhalten zurückzukehren. Die Möglichkeit, das Verhalten durch Ändern der Importversion zurückzusetzen, wird in einer späteren Version von Qt entfernt.
selectedText : string [read-only]
Diese schreibgeschützte Eigenschaft gibt den Text zurück, der derzeit im Textfeld ausgewählt ist.
Sie entspricht dem folgenden Codeausschnitt, ist jedoch schneller und einfacher zu verwenden.
//myTextEdit is the id of the TextEdit
myTextEdit.text.toString().substring(myTextEdit.selectionStart,
myTextEdit.selectionEnd);selectedTextColor : color
Die ausgewählte Textfarbe, die bei Markierungen verwendet wird.
selectionColor : color
Die Farbe der Textmarkierung, die hinter markierten Textstellen angezeigt wird.
selectionEnd : int [read-only]
Die Cursorposition nach dem letzten Zeichen der aktuellen Auswahl.
Diese Eigenschaft ist schreibgeschützt. Um die Auswahl zu ändern, verwenden Sie „select(start,end)“, „ selectAll()“ oder „ selectWord()“.
Siehe auch „ selectionStart “, „ cursorPosition “ und „ selectedText “.
selectionStart : int [read-only]
Die Cursorposition vor dem ersten Zeichen der aktuellen Auswahl.
Diese Eigenschaft ist schreibgeschützt. Um die Auswahl zu ändern, verwenden Sie „select(start,end)“, „ selectAll()“ oder „ selectWord()“.
Siehe auch ` selectionEnd`, ` cursorPosition` und ` selectedText`.
tabStopDistance : real
Der Standardabstand zwischen Tabulatoren in Geräteeinheiten.
Siehe auch „ QTextOption::setTabStopDistance()“.
text : string
Der anzuzeigende Text. Wenn als Textformat „AutoText“ gewählt wurde, ermittelt die Textbearbeitung automatisch, ob der Text als Rich Text behandelt werden soll. Diese Ermittlung erfolgt mithilfe von ` Qt::mightBeRichText()`. Die Erkennung von Markdown erfolgt jedoch nicht automatisch.
Die Eigenschaft „text“ eignet sich vor allem zum Festlegen des Anfangsinhaltes und zur Bearbeitung von Änderungen an relativ kleinen Textinhalten. Die Methoden „ append()“, „ insert()“ und „ remove()“ bieten eine feinere Steuerung und eine deutlich bessere Leistung bei der Bearbeitung besonders umfangreicher Rich-Text-Inhalte.
Beachten Sie, dass einige Tastaturen eine Vorhersagefunktion verwenden. In diesem Fall ist der von der Eingabemethode erstellte Text nicht Teil dieser Eigenschaft. Der Teil des Textes, der sich auf die Vorhersagen bezieht, wird unterstrichen und in der Eigenschaft „ preeditText “ gespeichert.
Wenn Sie ` TextDocument::source ` zum Laden von Text verwendet haben, können Sie den geladenen Text über diese Eigenschaft abrufen. In diesem Fall können Sie anschließend ` textFormat ` ändern, um Formatkonvertierungen durchzuführen, die den Wert der Eigenschaft ` text ` verändern. Wenn beispielsweise ` textFormat ` auf ` RichText ` oder ` AutoText ` gesetzt ist und Sie eine HTML-Datei laden, um anschließend ` textFormat ` auf ` MarkdownText ` zu setzen, enthält die Eigenschaft ` text ` die Konvertierung von HTML nach Markdown.
Siehe auch clear(), preeditText und textFormat.
textDocument : TextDocument [read-only]
Gibt den „ QQuickTextDocument “ dieses „ TextEdit “ zurück. Seit Qt 6.7 verfügt er über Funktionen zum Laden und Speichern von Dateien. Er kann in C++ auch als Mittel zum Zugriff auf die zugrunde liegende „ QTextDocument “-Instanz verwendet werden, beispielsweise um einen „ QSyntaxHighlighter “ zu installieren.
Siehe auch QQuickTextDocument.
textFormat : enumeration
Die Art und Weise, wie die Eigenschaft „ text “ angezeigt werden soll.
Unterstützte Textformate sind:
| Konstante | Beschreibung |
|---|---|
TextEdit.PlainText | (Standard) Alle Formatierungs-Tags werden als reiner Text behandelt |
TextEdit.AutoText | Erkennung über die Heuristik „ Qt::mightBeRichText()“ oder das Dateiformat TextDocument::source |
TextEdit.RichText | einer Teilmenge von HTML 4 |
TextEdit.MarkdownText | CommonMark sowie die GitHub-Erweiterungen für Tabellen und Aufgabenlisten (ab 5.14) |
Die Standardeinstellung ist „ TextEdit.PlainText “. Wenn das Textformat auf „ TextEdit.AutoText “ gesetzt ist, ermittelt die Textbearbeitung automatisch, ob der Text als Rich Text behandelt werden soll. Ist die Eigenschaft „ text “ gesetzt, erfolgt diese Ermittlung mithilfe von „ Qt::mightBeRichText()“, das das Vorhandensein eines HTML-Tags in der ersten Textzeile erkennen kann, jedoch nicht zwischen Markdown und reinem Text unterscheiden kann. Ist die Eigenschaft „ TextDocument::source “ gesetzt, erfolgt diese Feststellung anhand von „ mime type of the file “.
|
|
Bei „ TextEdit.MarkdownText “ können Kontrollkästchen, die durch die Verwendung der GitHub-Checkbox-Erweiterung entstehen, interaktiv aktiviert werden.
Ist die Eigenschaft „ TextDocument::source “ gesetzt, bewirkt eine Änderung der Eigenschaft „ textFormat “ nach dem Laden eine Konvertierung vom erkannten Format in das angeforderte Format. So können Sie beispielsweise zwischen HTML und Markdown konvertieren. Wird jedoch eines dieser „reichhaltigen“ Formate geladen und setzen Sie anschließend „ textFormat “ auf „ PlainText “, zeigt das „ TextEdit “ das rohe Markup an. Entsprechende Bindungen (z. B. an ein ankreuzbares Steuerelement) können es dem Benutzer somit ermöglichen, zwischen der „rohen“ und der WYSIWYG-Bearbeitung hin und her zu wechseln.
Hinweis: Dasinteraktive Eingeben von Markup- oder Markdown-Formatierungen im WYSIWYG-Modus wird nicht unterstützt; Sie können jedoch zu PlainText wechseln, Änderungen vornehmen und anschließend wieder zum entsprechenden textFormat zurückwechseln.
Hinweis: Bei Text.MarkdownText und bei der unterstützten Teilmenge von HTML werden einige dekorative Elemente nicht so dargestellt, wie sie in einem Webbrowser erscheinen würden:
- Code-Blöcke verwenden den „ default monospace font “, jedoch ohne umgebenden Hervorhebungsrahmen
- Blockzitate werden eingerückt, es gibt jedoch keine vertikale Linie neben dem Zitat
textMargin : real
Der Rand in Pixeln um den Text in der Datei „ TextEdit “.
wrapMode : enumeration
Setzen Sie diese Eigenschaft, um den Text an die Breite des Elements „ TextEdit “ anzupassen. Der Text wird nur umgebrochen, wenn eine explizite Breite festgelegt wurde.
| Konstante | Beschreibung |
|---|---|
TextEdit.NoWrap | (Standard) Es erfolgt kein Zeilenumbruch. Wenn der Text nicht genügend Zeilenumbrüche enthält, überschreitet „ implicitWidth “ die festgelegte Breite. |
TextEdit.WordWrap | Der Zeilenumbruch erfolgt ausschließlich an Wortgrenzen. Ist ein Wort zu lang, überschreitet „ implicitWidth “ die festgelegte Breite. |
TextEdit.WrapAnywhere | Der Zeilenumbruch erfolgt an einer beliebigen Stelle in einer Zeile, auch wenn diese in der Mitte eines Wortes liegt. |
TextEdit.Wrap | Wenn möglich, erfolgt der Zeilenumbruch an einer Wortgrenze; andernfalls erfolgt er an einer geeigneten Stelle in der Zeile, auch mitten in einem Wort. |
Die Standardeinstellung ist „ TextEdit.NoWrap “. Wenn Sie eine Breite festlegen, sollten Sie die Option „ TextEdit.Wrap “ in Betracht ziehen.
Signal-Dokumentation
editingFinished()
Dieses Signal wird ausgelöst, wenn das Textfeld den Fokus verliert.
Hinweis: Der entsprechende Handler lautet „ onEditingFinished “.
linkActivated(string link)
Dieses Signal wird ausgelöst, wenn der Benutzer auf einen im Text eingebetteten Link klickt. Der Link muss im Rich-Text- oder HTML-Format vorliegen, und die Zeichenfolge „ link “ ermöglicht den Zugriff auf den jeweiligen Link.
Hinweis: Der entsprechende Handler lautet „ onLinkActivated “.
linkHovered(string link)
Dieses Signal wird ausgelöst, wenn der Benutzer mit der Maus über einen im Text eingebetteten Link fährt. Der Link muss im Rich-Text- oder HTML-Format vorliegen, und die Zeichenfolge „ link “ ermöglicht den Zugriff auf den jeweiligen Link.
Hinweis: Der entsprechende Handler lautet „ onLinkHovered “.
Siehe auch „ hoveredLink “ und „ linkAt()“.
[since 6.9] textEdited()
Dieses Signal wird immer dann ausgelöst, wenn der Text bearbeitet wird. Im Gegensatz zu „ textChanged() “ wird dieses Signal nicht ausgelöst, wenn der Text programmgesteuert geändert wird, beispielsweise durch Ändern des Werts der Eigenschaft „ text “ oder durch Aufruf von „ clear()“.
Hinweis: Der entsprechende Handler ist ` onTextEdited`.
Dieses Signal wurde in Qt 6.9 eingeführt.
Methodendokumentation
void append(string text)
Fügt am Ende von ` TextEdit` einen neuen Absatz mit ` text ` an.
Um den Text anzuhängen, ohne einen neuen Absatz einzufügen, rufen Sie stattdessen „ myTextEdit.insert(myTextEdit.length, text) “ auf.
void clear()
Löscht den Inhalt des Textfelds und setzt die teilweise eingegebenen Textdaten aus einer Eingabemethode zurück.
Verwenden Sie diese Methode anstelle der Einstellung der Eigenschaft „ text “ auf eine leere Zeichenkette.
Siehe auch „ QInputMethod::reset()“.
void copy()
Kopiert den aktuell ausgewählten Text in die System-Zwischenablage.
void cut()
Kopiert den aktuell ausgewählten Text in die System-Zwischenablage.
void deselect()
Hebt die aktive Textauswahl auf.
string getFormattedText(int start, int end)
Gibt den Textabschnitt zurück, der sich zwischen den Positionen „ start “ und „ end “ befindet.
Der zurückgegebene Text wird entsprechend der Eigenschaft „ textFormat “ formatiert.
string getText(int start, int end)
Gibt den Textabschnitt zurück, der sich zwischen den Positionen „ start “ und „ end “ befindet.
Der zurückgegebene Text enthält keine Rich-Text-Formatierungen.
void insert(int position, string text)
Fügt „ text “ in die „ TextEdit “ unter position ein.
bool isRightToLeft(int start, int end)
Gibt „ true “ zurück, wenn die natürliche Leserichtung des Editortextes zwischen den Positionen „ start “ und „ end “ von rechts nach links verläuft.
string linkAt(real x, real y)
Gibt die Link-Zeichenkette an der Position „ x “, „ y “ in Inhaltskoordinaten zurück oder eine leere Zeichenkette, falls an dieser Stelle kein Link vorhanden ist.
Siehe auch hoveredLink.
void moveCursorSelection(int position, SelectionMode mode)
Bewegt den Cursor auf „ position “ und aktualisiert die Auswahl entsprechend dem optionalen Parameter „ mode “. (Um nur den Cursor zu bewegen, setzen Sie die Eigenschaft „ cursorPosition “.)
Wenn diese Methode aufgerufen wird, wird zusätzlich entweder der „ selectionStart “ oder der „ selectionEnd “ (je nachdem, welcher sich an der vorherigen Cursorposition befand) auf die angegebene Position gesetzt. Auf diese Weise können Sie den ausgewählten Textbereich ganz einfach erweitern oder verkleinern.
Der Auswahlmodus legt fest, ob die Auswahl zeichenweise oder wortweise aktualisiert wird. Wird kein Auswahlmodus angegeben, wird standardmäßig „ TextEdit.SelectCharacters “ verwendet.
| Konstante | Beschreibung |
|---|---|
TextEdit.SelectCharacters | Setzt entweder „ selectionStart “ oder „ selectionEnd “ (je nachdem, was an der vorherigen Cursorposition stand) auf die angegebene Position. |
TextEdit.SelectWords | Legt die Auswahlen „ selectionStart “ und „ selectionEnd “ so fest, dass sie alle Wörter zwischen der angegebenen Position und der vorherigen Cursorposition umfassen. Wörter, die teilweise in diesem Bereich liegen, werden mit einbezogen. |
Nehmen wir zum Beispiel folgende Abfolge von Aufrufen:
cursorPosition = 5
moveCursorSelection(9, TextEdit.SelectCharacters)
moveCursorSelection(7, TextEdit.SelectCharacters)Dadurch wird der Cursor an Position 5 gesetzt, das Ende der Auswahl von 5 auf 9 erweitert und anschließend das Ende der Auswahl von 9 auf 7 zurückgesetzt, sodass der Text von Position 5 bis 7 ausgewählt bleibt (das 6. und 7. Zeichen).
Die gleiche Abfolge mit ` TextEdit.SelectWords` erweitert den Auswahlbeginn bis zu einer Wortgrenze vor oder an Position 5 und den Auswahlende bis zu einer Wortgrenze an oder nach Position 9.
void paste()
Ersetzt den aktuell ausgewählten Text durch den Inhalt der System-Zwischenablage.
int positionAt(int x, int y)
Gibt die Textposition zurück, die der Pixelposition am nächsten liegt (x, y).
Position 0 liegt vor dem ersten Zeichen, Position 1 liegt nach dem ersten, aber vor dem zweiten Zeichen und so weiter bis zur Position ` text.length`, die nach allen Zeichen liegt.
rectangle positionToRectangle(position)
Gibt das Rechteck an der angegebenen Koordinaten position e im Text zurück. Die Eigenschaften „x“, „y“ und „height“ entsprechen dem Cursor, der diese Position beschreiben würde.
void redo()
Führt die letzte Operation erneut aus, wenn „redo“ auf „ available “ gesetzt ist.
string remove(int start, int end)
Entfernt den Textabschnitt, der sich zwischen den Positionen „ start “ und „ end “ befindet, aus „ TextEdit “.
void select(int start, int end)
Bewirkt, dass der Text von start bis end ausgewählt wird.
Liegt entweder der Start- oder der Endpunkt außerhalb des zulässigen Bereichs, wird die Auswahl nicht geändert.
Nach dem Aufruf dieser Methode wird selectionStart zum kleineren und selectionEnd zum größeren Wert (unabhängig von der Reihenfolge, in der die Parameter an diese Methode übergeben wurden).
Siehe auch „ selectionStart “ und „ selectionEnd “.
void selectAll()
Der gesamte Text wird ausgewählt.
void selectWord()
Wählt das Wort aus, das der aktuellen Cursorposition am nächsten liegt.
void undo()
Macht den letzten Vorgang rückgängig, sofern „undo“ auf „ available “ gesetzt ist. Hebt die aktuelle Auswahl auf und setzt den Auswahlbeginn auf die aktuelle Cursorposition.
© 2026 The Qt Company Ltd. Documentation contributions included herein are the copyrights of their respective owners. The documentation provided herein is licensed under the terms of the GNU Free Documentation License version 1.3 as published by the Free Software Foundation. Qt and respective logos are trademarks of The Qt Company Ltd. in Finland and/or other countries worldwide. All other trademarks are property of their respective owners.
