QPlainTextEdit Class
Die Klasse QPlainTextEdit stellt ein Widget zur Verfügung, mit dem einfacher Text bearbeitet und angezeigt werden kann. Mehr...
Kopfzeile: | #include <QPlainTextEdit> |
CMake: | find_package(Qt6 REQUIRED COMPONENTS Widgets) target_link_libraries(mytarget PRIVATE Qt6::Widgets) |
qmake: | QT += widgets |
Vererbt: | QAbstractScrollArea |
- Liste aller Mitglieder, einschließlich geerbter Mitglieder
- QPlainTextEdit ist Teil der Rich Text Processing APIs.
Öffentliche Typen
enum | LineWrapMode { NoWrap, WidgetWidth } |
Eigenschaften
|
|
Öffentliche Funktionen
QPlainTextEdit(QWidget *parent = nullptr) | |
QPlainTextEdit(const QString &text, QWidget *parent = nullptr) | |
virtual | ~QPlainTextEdit() |
QString | anchorAt(const QPoint &pos) const |
bool | backgroundVisible() const |
int | blockCount() const |
bool | canPaste() const |
bool | centerOnScroll() const |
QMenu * | createStandardContextMenu() |
QMenu * | createStandardContextMenu(const QPoint &position) |
QTextCharFormat | currentCharFormat() const |
QTextCursor | cursorForPosition(const QPoint &pos) const |
QRect | cursorRect() const |
QRect | cursorRect(const QTextCursor &cursor) const |
int | cursorWidth() const |
QTextDocument * | document() const |
QString | documentTitle() const |
void | ensureCursorVisible() |
QList<QTextEdit::ExtraSelection> | extraSelections() const |
bool | find(const QString &exp, QTextDocument::FindFlags options = QTextDocument::FindFlags()) |
bool | find(const QRegularExpression &exp, QTextDocument::FindFlags options = QTextDocument::FindFlags()) |
bool | isReadOnly() const |
bool | isUndoRedoEnabled() const |
QPlainTextEdit::LineWrapMode | lineWrapMode() const |
virtual QVariant | loadResource(int type, const QUrl &name) |
int | maximumBlockCount() const |
void | mergeCurrentCharFormat(const QTextCharFormat &modifier) |
void | moveCursor(QTextCursor::MoveOperation operation, QTextCursor::MoveMode mode = QTextCursor::MoveAnchor) |
bool | overwriteMode() const |
QString | placeholderText() const |
void | print(QPagedPaintDevice *printer) const |
void | setBackgroundVisible(bool visible) |
void | setCenterOnScroll(bool enabled) |
void | setCurrentCharFormat(const QTextCharFormat &format) |
void | setCursorWidth(int width) |
void | setDocument(QTextDocument *document) |
void | setDocumentTitle(const QString &title) |
void | setExtraSelections(const QList<QTextEdit::ExtraSelection> &selections) |
void | setLineWrapMode(QPlainTextEdit::LineWrapMode mode) |
void | setMaximumBlockCount(int maximum) |
void | setOverwriteMode(bool overwrite) |
void | setPlaceholderText(const QString &placeholderText) |
void | setReadOnly(bool ro) |
void | setTabChangesFocus(bool b) |
void | setTabStopDistance(qreal distance) |
void | setTextCursor(const QTextCursor &cursor) |
void | setTextInteractionFlags(Qt::TextInteractionFlags flags) |
void | setUndoRedoEnabled(bool enable) |
void | setWordWrapMode(QTextOption::WrapMode policy) |
bool | tabChangesFocus() const |
qreal | tabStopDistance() const |
QTextCursor | textCursor() const |
Qt::TextInteractionFlags | textInteractionFlags() const |
QString | toPlainText() const |
QTextOption::WrapMode | wordWrapMode() const |
Reimplementierte öffentliche Funktionen
virtual QVariant | inputMethodQuery(Qt::InputMethodQuery property) const override |
Öffentliche Slots
void | appendHtml(const QString &html) |
void | appendPlainText(const QString &text) |
void | centerCursor() |
void | clear() |
void | copy() |
void | cut() |
void | insertPlainText(const QString &text) |
void | paste() |
void | redo() |
void | selectAll() |
void | setPlainText(const QString &text) |
void | undo() |
void | zoomIn(int range = 1) |
void | zoomOut(int range = 1) |
Signale
void | blockCountChanged(int newBlockCount) |
void | copyAvailable(bool yes) |
void | cursorPositionChanged() |
void | modificationChanged(bool changed) |
void | redoAvailable(bool available) |
void | selectionChanged() |
void | textChanged() |
void | undoAvailable(bool available) |
void | updateRequest(const QRect &rect, int dy) |
Geschützte Funktionen
QRectF | blockBoundingGeometry(const QTextBlock &block) const |
QRectF | blockBoundingRect(const QTextBlock &block) const |
virtual bool | canInsertFromMimeData(const QMimeData *source) const |
QPointF | contentOffset() const |
virtual QMimeData * | createMimeDataFromSelection() const |
QTextBlock | firstVisibleBlock() const |
QAbstractTextDocumentLayout::PaintContext | getPaintContext() const |
virtual void | insertFromMimeData(const QMimeData *source) |
Reimplementierte geschützte Funktionen
virtual void | changeEvent(QEvent *e) override |
virtual void | contextMenuEvent(QContextMenuEvent *event) override |
virtual void | dragEnterEvent(QDragEnterEvent *e) override |
virtual void | dragLeaveEvent(QDragLeaveEvent *e) override |
virtual void | dragMoveEvent(QDragMoveEvent *e) override |
virtual void | dropEvent(QDropEvent *e) override |
virtual void | focusInEvent(QFocusEvent *e) override |
virtual bool | focusNextPrevChild(bool next) override |
virtual void | focusOutEvent(QFocusEvent *e) override |
virtual void | inputMethodEvent(QInputMethodEvent *e) override |
virtual void | keyPressEvent(QKeyEvent *e) override |
virtual void | keyReleaseEvent(QKeyEvent *e) override |
virtual void | mouseDoubleClickEvent(QMouseEvent *e) override |
virtual void | mouseMoveEvent(QMouseEvent *e) override |
virtual void | mousePressEvent(QMouseEvent *e) override |
virtual void | mouseReleaseEvent(QMouseEvent *e) override |
virtual void | paintEvent(QPaintEvent *e) override |
virtual void | resizeEvent(QResizeEvent *e) override |
virtual void | scrollContentsBy(int dx, int dy) override |
virtual void | showEvent(QShowEvent *) override |
virtual void | wheelEvent(QWheelEvent *e) override |
Ausführliche Beschreibung
Einführung und Konzepte
QPlainTextEdit ist ein fortschrittlicher Betrachter/Editor, der einfachen Text unterstützt. Er ist optimiert, um große Dokumente zu bearbeiten und schnell auf Benutzereingaben zu reagieren.
QPlainText verwendet weitgehend die gleiche Technologie und die gleichen Konzepte wie QTextEdit, ist aber für die Bearbeitung von Klartext optimiert.
QPlainTextEdit arbeitet mit Absätzen und Zeichen. Ein Absatz ist eine formatierte Zeichenkette, die so umbrochen wird, dass sie in die Breite des Widgets passt. Standardmäßig bedeutet ein Zeilenumbruch beim Lesen von reinem Text einen Absatz. Ein Dokument besteht aus null oder mehr Absätzen. Absätze werden durch harte Zeilenumbrüche getrennt. Jedes Zeichen innerhalb eines Absatzes hat seine eigenen Attribute, z. B. Schriftart und Farbe.
Die Form des Mauszeigers in einem QPlainTextEdit ist standardmäßig Qt::IBeamCursor. Sie kann über die Cursor-Eigenschaft von viewport() geändert werden.
Verwendung von QPlainTextEdit als Anzeige-Widget
Der Text wird mit setPlainText() gesetzt oder ersetzt, wodurch der vorhandene Text gelöscht und durch den an setPlainText() übergebenen Text ersetzt wird.
Text kann mit der Klasse QTextCursor oder mit den Komfortfunktionen insertPlainText(), appendPlainText() oder paste() eingefügt werden.
Standardmäßig bricht die Texteingabe Wörter an Leerzeichen um, damit sie in das Texteingabe-Widget passen. Die Funktion setLineWrapMode() wird verwendet, um die Art des Zeilenumbruchs festzulegen, die Sie wünschen, WidgetWidth oder NoWrap, wenn Sie keinen Umbruch wünschen. Wenn Sie den Zeilenumbruch auf die Breite des Widgets WidgetWidth verwenden, können Sie mit setWordWrapMode() angeben, ob der Umbruch an Leerzeichen oder an einer beliebigen Stelle erfolgen soll.
Die Funktion find() kann verwendet werden, um eine bestimmte Zeichenkette innerhalb des Textes zu finden und auszuwählen.
Wenn Sie die Gesamtzahl der Absätze in einem QPlainTextEdit begrenzen wollen, wie es z.B. in einem Log-Viewer sinnvoll ist, können Sie die Eigenschaft maximumBlockCount verwenden. Die Kombination von setMaximumBlockCount() und appendPlainText() macht QPlainTextEdit zu einem effizienten Betrachter für Protokolltext. Das Scrollen kann mit der Eigenschaft centerOnScroll() reduziert werden, wodurch der Log-Viewer noch schneller wird. Text kann in begrenztem Umfang formatiert werden, entweder mit einem Syntax-Highlighter (siehe unten) oder durch Anhängen von html-formatiertem Text mit appendHtml(). Während QPlainTextEdit keine komplexe Rich-Text-Darstellung mit Tabellen und Floats unterstützt, unterstützt es begrenzte absatzbasierte Formatierung, die Sie in einem Log-Viewer benötigen könnten.
Nur-Lese-Schlüssel-Bindungen
Wenn QPlainTextEdit nur zum Lesen verwendet wird, sind die Tastenbelegungen auf die Navigation beschränkt und der Text kann nur mit der Maus ausgewählt werden:
Tastendruck | Aktion |
---|---|
Qt::UpArrow | Bewegt sich eine Zeile nach oben. |
Qt::DownArrow | Verschiebt eine Zeile nach unten. |
Qt::LeftArrow | Verschiebt ein Zeichen nach links. |
Qt::RightArrow | Verschiebt ein Zeichen nach rechts. |
Seite nach oben | Verschiebt eine (Ansichtsfenster-)Seite nach oben. |
SeiteRunter | Bewegt sich eine (Ansichtsfenster-)Seite nach unten. |
Startseite | Springt an den Anfang des Textes. |
Ende | Bewegt sich zum Ende des Textes. |
Alt+Rad | Blättert die Seite horizontal (das Rad ist das Mausrad). |
Strg+Rad | Zoomt den Text. |
Strg+A | Wählt den gesamten Text aus. |
Verwendung von QPlainTextEdit als Editor
Alle Informationen zur Verwendung von QPlainTextEdit als Anzeige-Widget gelten auch hier.
Die Auswahl von Text wird von der Klasse QTextCursor gehandhabt, die Funktionen zum Erstellen von Markierungen, Abrufen des Textinhalts oder Löschen von Markierungen bietet. Das Objekt, das dem für den Benutzer sichtbaren Cursor entspricht, können Sie mit der Methode textCursor() abrufen. Wenn Sie eine Auswahl in QPlainTextEdit setzen möchten, erstellen Sie einfach eine Auswahl auf einem QTextCursor Objekt und machen Sie dann diesen Cursor mit setCursor() zum sichtbaren Cursor. Die Auswahl kann mit copy() in die Zwischenablage kopiert oder mit cut() in die Zwischenablage ausgeschnitten werden. Der gesamte Text kann mit selectAll() ausgewählt werden.
QPlainTextEdit enthält ein QTextDocument Objekt, das mit der Methode document() abgerufen werden kann. Sie können auch Ihr eigenes Dokumentobjekt mit setDocument() setzen. QTextDocument gibt ein textChanged()-Signal aus, wenn sich der Text ändert, und bietet auch eine isModified()-Funktion, die true zurückgibt, wenn der Text entweder seit dem Laden oder seit dem letzten Aufruf von setModified mit false als Argument geändert wurde. Darüber hinaus bietet sie Methoden für Undo und Redo.
Syntax-Hervorhebung
Genau wie QTextEdit arbeitet auch QPlainTextEdit mit QSyntaxHighlighter zusammen.
Bearbeiten von Tastaturbelegungen
Die Liste der Tastenkombinationen, die für die Bearbeitung implementiert sind:
Tastendrucke | Aktion |
---|---|
Rücktaste | Löscht das Zeichen links vom Cursor. |
Löschen | Löscht das Zeichen rechts vom Cursor. |
Strg+C | Kopiert den ausgewählten Text in die Zwischenablage. |
Strg+Einfügen | Kopiert den markierten Text in die Zwischenablage. |
Strg+K | Löscht bis zum Ende der Zeile. |
Strg+V | Fügt den Text aus der Zwischenablage in die Textbearbeitung ein. |
Umschalt+Einfügen | Fügt den Text aus der Zwischenablage in die Textverarbeitung ein. |
Strg+X | Löscht den ausgewählten Text und kopiert ihn in die Zwischenablage. |
Umschalt+Löschen | Löscht den markierten Text und kopiert ihn in die Zwischenablage. |
Strg+Z | Macht den letzten Vorgang rückgängig. |
Strg+Y | Wiederholt den letzten Vorgang. |
Linker Pfeil | Bewegt den Cursor um ein Zeichen nach links. |
Strg+Pfeil links | Bewegt den Cursor um ein Wort nach links. |
RechtsPfeil | Bewegt den Cursor um ein Zeichen nach rechts. |
Strg+RechtsPfeil | Bewegt den Cursor um ein Wort nach rechts. |
AufwärtsPfeil | Bewegt den Cursor eine Zeile nach oben. |
Strg+Pfeil nach oben | Bewegt den Cursor um ein Wort nach oben. |
Abwärtspfeil | Bewegt den Cursor um eine Zeile nach unten. |
Strg+Pfeil abwärts | Bewegt den Cursor um ein Wort nach unten. |
Seite nach oben | Bewegt den Cursor eine Seite nach oben. |
SeiteAb | Bewegt den Cursor um eine Seite nach unten. |
Startseite | Setzt den Cursor an den Anfang der Zeile. |
Strg+Home | Bewegt den Cursor an den Anfang des Textes. |
Ende | Bewegt den Cursor an das Ende der Zeile. |
Strg+Ende | Bewegt den Cursor an das Ende des Textes. |
Alt+Rad | Scrollt die Seite horizontal (das Rad ist das Mausrad). |
Strg+Rad | Zoomt den Text. |
Um Text auszuwählen (zu markieren), halten Sie die Umschalttaste gedrückt, während Sie eine der Bewegungstasten drücken, z. B. Umschalt+Pfeil nach rechts wählt das Zeichen rechts aus, und Umschalt+Strg+Pfeil nach rechts wählt das Wort rechts aus, usw.
Unterschiede zu QTextEdit
QPlainTextEdit ist eine schlanke Klasse, die den größten Teil der Technologie hinter QTextEdit und QTextDocument verwendet. Die Leistungsvorteile gegenüber QTextEdit ergeben sich hauptsächlich aus der Verwendung eines anderen und vereinfachten Textlayouts namens QPlainTextDocumentLayout für das Textdokument (siehe QTextDocument::setDocumentLayout()). Das reine Textdokument-Layout unterstützt weder Tabellen noch eingebettete Rahmen und ersetzt eine pixelgenaue Höhenberechnung durch ein zeilen- bzw. absatzweises Scrollen. Dadurch ist es möglich, wesentlich größere Dokumente zu bearbeiten und die Größe des Editors bei aktiviertem Zeilenumbruch in Echtzeit zu ändern. Es ermöglicht auch einen schnellen Log-Viewer (siehe setMaximumBlockCount()).
{Syntax Highlighter Beispiel}, {Rich Text Processing}
Siehe auch QTextDocument und QTextCursor.
Member-Typ-Dokumentation
enum QPlainTextEdit::LineWrapMode
Konstante | Wert |
---|---|
QPlainTextEdit::NoWrap | 0 |
QPlainTextEdit::WidgetWidth | 1 |
Eigenschaft Dokumentation
backgroundVisible : bool
Diese Eigenschaft bestimmt, ob der Palettenhintergrund außerhalb des Dokumentbereichs sichtbar ist
Wenn sie auf true gesetzt ist, wird der Palettenhintergrund in dem Bereich des Ansichtsfensters gezeichnet, der nicht vom Textdokument bedeckt ist. Andernfalls, wenn sie auf false gesetzt ist, wird er nicht gezeichnet. Diese Funktion ermöglicht es dem Benutzer, visuell zwischen dem mit der Grundfarbe der Palette gemalten Bereich des Dokuments und dem leeren Bereich, der nicht von einem Dokument bedeckt ist, zu unterscheiden.
Die Voreinstellung ist false.
Zugriffsfunktionen:
bool | backgroundVisible() const |
void | setBackgroundVisible(bool visible) |
[read-only]
blockCount : const int
Diese Eigenschaft enthält die Anzahl der Textblöcke im Dokument.
In einem leeren Dokument enthält diese Eigenschaft standardmäßig den Wert 1.
Zugriffsfunktionen:
int | blockCount() const |
centerOnScroll : bool
Diese Eigenschaft legt fest, ob der Cursor auf dem Bildschirm zentriert werden soll.
Wenn sie auf true gesetzt ist, scrollt die Textbearbeitung das Dokument vertikal, um den Cursor in der Mitte des Ansichtsfensters sichtbar zu machen. Dadurch kann die Textbearbeitung auch unter das Ende des Dokuments scrollen. Andernfalls, wenn der Wert auf "false" gesetzt ist, scrollt die Textbearbeitung so wenig wie möglich, um sicherzustellen, dass der Cursor sichtbar ist. Der gleiche Algorithmus wird auf jede neue Zeile angewandt, die durch appendPlainText() angefügt wird.
Die Voreinstellung ist false.
Zugriffsfunktionen:
bool | centerOnScroll() const |
void | setCenterOnScroll(bool enabled) |
Siehe auch centerCursor() und ensureCursorVisible().
cursorWidth : int
Diese Eigenschaft gibt die Breite des Cursors in Pixeln an. Der Standardwert ist 1.
Zugriffsfunktionen:
int | cursorWidth() const |
void | setCursorWidth(int width) |
documentTitle : QString
Diese Eigenschaft enthält den Titel des Dokuments, der aus dem Text geparst wurde.
Standardmäßig enthält diese Eigenschaft eine leere Zeichenkette.
Zugriffsfunktionen:
QString | documentTitle() const |
void | setDocumentTitle(const QString &title) |
lineWrapMode : LineWrapMode
Diese Eigenschaft legt den Zeilenumbruchmodus fest
Der Standardmodus ist WidgetWidth, der bewirkt, dass Wörter am rechten Rand der Textbearbeitung umbrochen werden. Der Umbruch erfolgt an Leerzeichen, wobei ganze Wörter intakt bleiben. Wenn Sie möchten, dass der Umbruch innerhalb von Wörtern erfolgt, verwenden Sie setWordWrapMode().
Zugriffsfunktionen:
QPlainTextEdit::LineWrapMode | lineWrapMode() const |
void | setLineWrapMode(QPlainTextEdit::LineWrapMode mode) |
maximumBlockCount : int
Diese Eigenschaft enthält die Grenze für Blöcke im Dokument.
Sie gibt die maximale Anzahl von Blöcken an, die das Dokument haben darf. Enthält das Dokument mehr Blöcke als mit dieser Eigenschaft angegeben, werden die Blöcke am Anfang des Dokuments entfernt.
Ein negativer Wert oder Null gibt an, dass das Dokument eine unbegrenzte Anzahl von Blöcken enthalten darf.
Der Standardwert ist 0.
Beachten Sie, dass das Setzen dieser Eigenschaft die Begrenzung sofort auf den Inhalt des Dokuments anwendet. Das Setzen dieser Eigenschaft deaktiviert auch die Rückgängigmachungshistorie.
Zugriffsfunktionen:
int | maximumBlockCount() const |
void | setMaximumBlockCount(int maximum) |
overwriteMode : bool
Diese Eigenschaft legt fest, ob der vom Benutzer eingegebene Text den vorhandenen Text überschreibt
Wie bei vielen Texteditoren kann auch das Klartext-Editor-Widget so konfiguriert werden, dass vorhandener Text durch neuen, vom Benutzer eingegebenen Text eingefügt oder überschrieben wird.
Wenn diese Eigenschaft true
lautet, wird der vorhandene Text Zeichen für Zeichen mit dem neuen Text überschrieben; andernfalls wird der Text an der Cursorposition eingefügt und der vorhandene Text verdrängt.
Standardmäßig ist diese Eigenschaft false
(neuer Text überschreibt den vorhandenen Text nicht).
Zugriffsfunktionen:
bool | overwriteMode() const |
void | setOverwriteMode(bool overwrite) |
placeholderText : QString
Diese Eigenschaft enthält den Editor-Platzhaltertext
Wenn diese Eigenschaft gesetzt wird, zeigt der Editor einen ausgegrauten Platzhaltertext an, solange die document() leer ist.
Standardmäßig enthält diese Eigenschaft eine leere Zeichenkette.
Zugriffsfunktionen:
QString | placeholderText() const |
void | setPlaceholderText(const QString &placeholderText) |
Siehe auch document().
plainText : QString
Diese Eigenschaft ruft den Inhalt des Klartexteditors ab und legt ihn fest. Der vorherige Inhalt wird entfernt und die Rückgängig-/Wiederherstellungshistorie wird zurückgesetzt, wenn diese Eigenschaft gesetzt wird. currentCharFormat() wird ebenfalls zurückgesetzt, es sei denn, textCursor() befindet sich bereits am Anfang des Dokuments.
Standardmäßig enthält diese Eigenschaft bei einem Editor ohne Inhalt eine leere Zeichenkette.
Zugriffsfunktionen:
QString | toPlainText() const |
void | setPlainText(const QString &text) |
Melder-Signal:
void | textChanged() |
readOnly : bool
Diese Eigenschaft gibt an, ob die Textbearbeitung schreibgeschützt ist.
Bei einer schreibgeschützten Texteingabe kann der Benutzer nur durch den Text navigieren und Text auswählen; eine Änderung des Textes ist nicht möglich.
Die Voreinstellung für diese Eigenschaft ist false.
Zugriffsfunktionen:
bool | isReadOnly() const |
void | setReadOnly(bool ro) |
tabChangesFocus : bool
Diese Eigenschaft bestimmt, ob Tab den Fokus ändert oder als Eingabe akzeptiert wird.
In manchen Fällen sollte der Benutzer bei der Textbearbeitung keine Tabulatoren eingeben oder die Einrückung mit der Taste Tab ändern können, da dies die Fokuskette unterbricht. Die Voreinstellung ist false.
Zugriffsfunktionen:
bool | tabChangesFocus() const |
void | setTabChangesFocus(bool b) |
tabStopDistance : qreal
Diese Eigenschaft enthält den Abstand des Tabstopps in Pixeln
Standardmäßig enthält diese Eigenschaft einen Wert von 80 Pixeln.
Setzen Sie keinen Wert, der kleiner ist als der horizontalAdvance() des QChar::VisualTabCharacter Zeichens, sonst wird das Tabulator-Zeichen unvollständig gezeichnet.
Zugriffsfunktionen:
qreal | tabStopDistance() const |
void | setTabStopDistance(qreal distance) |
Siehe auch QTextOption::ShowTabsAndSpaces und QTextDocument::defaultTextOption.
textInteractionFlags : Qt::TextInteractionFlags
Gibt an, wie das Etikett mit Benutzereingaben interagieren soll, wenn es Text anzeigt.
Wenn die Flags entweder Qt::LinksAccessibleByKeyboard oder Qt::TextSelectableByKeyboard enthalten, wird auch die Fokusrichtlinie automatisch auf Qt::ClickFocus gesetzt.
Der Standardwert hängt davon ab, ob QPlainTextEdit schreibgeschützt oder editierbar ist.
Zugriffsfunktionen:
Qt::TextInteractionFlags | textInteractionFlags() const |
void | setTextInteractionFlags(Qt::TextInteractionFlags flags) |
undoRedoEnabled : bool
Diese Eigenschaft gibt an, ob Rückgängigmachen und Wiederherstellen aktiviert sind.
Benutzer können Aktionen nur dann rückgängig machen oder wiederherstellen, wenn diese Eigenschaft wahr ist und wenn es eine Aktion gibt, die rückgängig gemacht (oder wiederhergestellt) werden kann.
Standardmäßig ist diese Eigenschaft true
.
Zugriffsfunktionen:
bool | isUndoRedoEnabled() const |
void | setUndoRedoEnabled(bool enable) |
wordWrapMode : QTextOption::WrapMode
Diese Eigenschaft enthält den Modus, den QPlainTextEdit beim Umbruch von Text durch Wörter verwendet.
Standardmäßig ist diese Eigenschaft auf QTextOption::WrapAtWordBoundaryOrAnywhere eingestellt.
Zugriffsfunktionen:
QTextOption::WrapMode | wordWrapMode() const |
void | setWordWrapMode(QTextOption::WrapMode policy) |
Siehe auch QTextOption::WrapMode.
Dokumentation der Mitgliedsfunktionen
[explicit]
QPlainTextEdit::QPlainTextEdit(QWidget *parent = nullptr)
Konstruiert ein leeres QPlainTextEdit mit übergeordnetem parent.
[explicit]
QPlainTextEdit::QPlainTextEdit(const QString &text, QWidget *parent = nullptr)
Konstruiert ein QPlainTextEdit mit übergeordnetem parent. Die Textbearbeitung zeigt den reinen Text text an.
[virtual noexcept]
QPlainTextEdit::~QPlainTextEdit()
Zerstörer.
QString QPlainTextEdit::anchorAt(const QPoint &pos) const
Gibt die Referenz des Ankers an der Position pos zurück, oder eine leere Zeichenkette, wenn an dieser Stelle kein Anker existiert.
[slot]
void QPlainTextEdit::appendHtml(const QString &html)
Hängt einen neuen Absatz mit html an das Ende der Textbearbeitung an.
[slot]
void QPlainTextEdit::appendPlainText(const QString &text)
Hängt einen neuen Absatz mit text an das Ende der Textbearbeitung an.
Siehe auch appendHtml().
[protected]
QRectF QPlainTextEdit::blockBoundingGeometry(const QTextBlock &block) const
Gibt das begrenzende Rechteck des Textes block in Inhaltskoordinaten zurück. Translate the rectangle with the contentOffset() to get visual coordinates on the viewport.
Siehe auch firstVisibleBlock() und blockBoundingRect().
[protected]
QRectF QPlainTextEdit::blockBoundingRect(const QTextBlock &block) const
Liefert das begrenzende Rechteck des Textes block in den eigenen Koordinaten des Blocks.
Siehe auch blockBoundingGeometry().
[signal]
void QPlainTextEdit::blockCountChanged(int newBlockCount)
Dieses Signal wird bei jeder Änderung der Blockanzahl ausgegeben. Die neue Blockanzahl wird in newBlockCount übergeben.
[virtual protected]
bool QPlainTextEdit::canInsertFromMimeData(const QMimeData *source) const
Diese Funktion gibt true
zurück, wenn der Inhalt des MIME-Datenobjekts, das durch source angegeben wird, dekodiert und in das Dokument eingefügt werden kann. Sie wird z. B. aufgerufen, wenn die Maus während eines Ziehvorgangs in dieses Widget gelangt und festgestellt werden muss, ob das Ziehen akzeptiert werden kann.
bool QPlainTextEdit::canPaste() const
Gibt zurück, ob Text aus der Zwischenablage in das Textedit eingefügt werden kann.
[slot]
void QPlainTextEdit::centerCursor()
Scrollt das Dokument, um den Cursor vertikal zu zentrieren.
Siehe auch ensureCursorVisible() und centerOnScroll.
[override virtual protected]
void QPlainTextEdit::changeEvent(QEvent *e)
Reimplements: QFrame::changeEvent(QEvent *ev).
[slot]
void QPlainTextEdit::clear()
Löscht den gesamten Text in der Textbearbeitung.
Anmerkungen:
- Der Verlauf des Rückgängigmachens/Wiederholens wird ebenfalls gelöscht.
- currentCharFormat() wird zurückgesetzt, es sei denn, textCursor() befindet sich bereits am Anfang des Dokuments.
Siehe auch cut() und setPlainText().
[protected]
QPointF QPlainTextEdit::contentOffset() const
Gibt den Ursprung des Inhalts in Ansichtsfenster-Koordinaten zurück.
Der Ursprung des Inhalts einer einfachen Textbearbeitung ist immer die linke obere Ecke des ersten sichtbaren Textblocks. Der Content-Offset ist anders als (0,0), wenn der Text horizontal gescrollt wurde, oder wenn der erste sichtbare Block teilweise aus dem Bildschirm gescrollt wurde, d.h. der sichtbare Text beginnt nicht mit der ersten Zeile des ersten sichtbaren Blocks, oder wenn der erste sichtbare Block der allererste Block ist und der Editor einen Rand anzeigt.
Siehe auch firstVisibleBlock(), horizontalScrollBar(), und verticalScrollBar().
[override virtual protected]
void QPlainTextEdit::contextMenuEvent(QContextMenuEvent *event)
Reimplements: QAbstractScrollArea::contextMenuEvent(QContextMenuEvent *e).
Zeigt das mit createStandardContextMenu() erstellte Standard-Kontextmenü an.
Wenn Sie nicht wollen, dass die Texteingabe ein Kontextmenü hat, können Sie contextMenuPolicy auf Qt::NoContextMenu setzen. Wenn Sie das Kontextmenü anpassen wollen, implementieren Sie diese Funktion neu. Wenn Sie das Standard-Kontextmenü erweitern wollen, implementieren Sie diese Funktion neu, rufen createStandardContextMenu() auf und erweitern das zurückgegebene Menü.
Die Informationen über das Ereignis werden im Objekt event übergeben.
void MyQPlainTextEdit::contextMenuEvent(QContextMenuEvent *event) { QMenu *menu = createStandardContextMenu(); menu->addAction(tr("My Menu Item")); //... menu->exec(event->globalPos()); delete menu; }
[slot]
void QPlainTextEdit::copy()
Kopiert einen beliebigen markierten Text in die Zwischenablage.
Siehe auch copyAvailable().
[signal]
void QPlainTextEdit::copyAvailable(bool yes)
Dieses Signal wird ausgegeben, wenn Text in der Textbearbeitung ausgewählt oder abgewählt wird.
Wenn Text markiert ist, wird dieses Signal mit yes auf true gesetzt. Wenn kein Text markiert ist oder der markierte Text abgewählt wird, wird dieses Signal ausgegeben, wobei yes auf false gesetzt ist.
Wenn yes wahr ist, kann copy() verwendet werden, um die Auswahl in die Zwischenablage zu kopieren. Wenn yes falsch ist, bewirkt copy() nichts.
Siehe auch selectionChanged().
[virtual protected]
QMimeData *QPlainTextEdit::createMimeDataFromSelection() const
Diese Funktion gibt ein neues MIME-Datenobjekt zurück, das den Inhalt der aktuellen Auswahl der Textbearbeitung darstellt. Sie wird aufgerufen, wenn die Auswahl in ein neues QMimeData Objekt gekapselt werden soll, z.B. wenn eine Drag & Drop Operation gestartet wird oder wenn Daten in die Zwischenablage kopiert werden.
Wenn Sie diese Funktion neu implementieren, beachten Sie, dass der Besitz des zurückgegebenen QMimeData Objekts an den Aufrufer übergeben wird. Die Auswahl kann mit Hilfe der Funktion textCursor() abgerufen werden.
QMenu *QPlainTextEdit::createStandardContextMenu()
Diese Funktion erstellt das Standard-Kontextmenü, das angezeigt wird, wenn der Benutzer mit der rechten Maustaste auf den zu bearbeitenden Text klickt. Sie wird vom Standardhandler contextMenuEvent() aufgerufen. Das Eigentum an dem Popup-Menü wird an den Aufrufer übertragen.
Wir empfehlen Ihnen, stattdessen die Version createStandardContextMenu(QPoint) zu verwenden, die die Aktionen aktiviert, die davon abhängen, wo der Benutzer geklickt hat.
QMenu *QPlainTextEdit::createStandardContextMenu(const QPoint &position)
Diese Funktion erstellt das Standard-Kontextmenü, das angezeigt wird, wenn der Benutzer mit der rechten Maustaste auf den zu bearbeitenden Text klickt. Sie wird vom Standardhandler contextMenuEvent() aufgerufen und nimmt die position in Dokumentenkoordinaten, wo der Mausklick war. Dadurch können Aktionen aktiviert werden, die von der Position abhängen, an der der Benutzer geklickt hat. Der Besitz des Popup-Menüs wird an den Aufrufer übertragen.
QTextCharFormat QPlainTextEdit::currentCharFormat() const
Gibt das Zeichenformat zurück, das beim Einfügen von neuem Text verwendet wird.
Siehe auch setCurrentCharFormat().
QTextCursor QPlainTextEdit::cursorForPosition(const QPoint &pos) const
gibt eine QTextCursor an der Position pos (in Ansichtskoordinaten) zurück.
[signal]
void QPlainTextEdit::cursorPositionChanged()
Dieses Signal wird ausgegeben, wenn sich die Position des Cursors geändert hat.
QRect QPlainTextEdit::cursorRect() const
gibt ein Rechteck (in Ansichtsfenster-Koordinaten) zurück, das den Cursor der Textbearbeitung einschließt.
QRect QPlainTextEdit::cursorRect(const QTextCursor &cursor) const
gibt ein Rechteck (in Ansichtsfensterkoordinaten) zurück, das die cursor einschließt.
[slot]
void QPlainTextEdit::cut()
Kopiert den markierten Text in die Zwischenablage und löscht ihn aus der Textbearbeitung.
Wenn kein Text markiert ist, geschieht nichts.
Siehe auch copy() und paste().
QTextDocument *QPlainTextEdit::document() const
Gibt einen Zeiger auf das zugrunde liegende Dokument zurück.
Siehe auch setDocument().
[override virtual protected]
void QPlainTextEdit::dragEnterEvent(QDragEnterEvent *e)
Reimplements: QAbstractScrollArea::dragEnterEvent(QDragEnterEvent *event).
[override virtual protected]
void QPlainTextEdit::dragLeaveEvent(QDragLeaveEvent *e)
Reimplements: QAbstractScrollArea::dragLeaveEvent(QDragLeaveEvent *event).
[override virtual protected]
void QPlainTextEdit::dragMoveEvent(QDragMoveEvent *e)
Reimplements: QAbstractScrollArea::dragMoveEvent(QDragMoveEvent *event).
[override virtual protected]
void QPlainTextEdit::dropEvent(QDropEvent *e)
Reimplements: QAbstractScrollArea::dropEvent(QDropEvent *event).
void QPlainTextEdit::ensureCursorVisible()
Stellt sicher, dass der Cursor sichtbar ist, indem er die Textbearbeitung bei Bedarf durchläuft.
Siehe auch centerCursor() und centerOnScroll.
QList<QTextEdit::ExtraSelection> QPlainTextEdit::extraSelections() const
Liefert die zuvor eingestellten Extra-Auswahlen zurück.
Siehe auch setExtraSelections().
bool QPlainTextEdit::find(const QString &exp, QTextDocument::FindFlags options = QTextDocument::FindFlags())
Findet das nächste Vorkommen der Zeichenkette exp unter Verwendung der angegebenen options. Gibt true
zurück, wenn exp gefunden wurde, und ändert den Cursor, um die Übereinstimmung auszuwählen; andernfalls wird false
zurückgegeben.
bool QPlainTextEdit::find(const QRegularExpression &exp, QTextDocument::FindFlags options = QTextDocument::FindFlags())
Dies ist eine überladene Funktion.
Findet das nächste Vorkommen, das mit dem regulären Ausdruck exp übereinstimmt, unter Verwendung des angegebenen options.
Gibt true
zurück, wenn eine Übereinstimmung gefunden wurde, und ändert den Cursor, um die Übereinstimmung auszuwählen; andernfalls wird false
zurückgegeben.
Warnung: Aus historischen Gründen wird die Option zur Unterscheidung von Groß- und Kleinschreibung, die für exp festgelegt wurde, ignoriert. Stattdessen werden die options verwendet, um festzustellen, ob bei der Suche die Groß-/Kleinschreibung beachtet wird oder nicht.
[protected]
QTextBlock QPlainTextEdit::firstVisibleBlock() const
Gibt den ersten sichtbaren Block zurück.
Siehe auch blockBoundingRect().
[override virtual protected]
void QPlainTextEdit::focusInEvent(QFocusEvent *e)
Reimplements: QWidget::focusInEvent(QFocusEvent *event).
[override virtual protected]
bool QPlainTextEdit::focusNextPrevChild(bool next)
Reimplements: QWidget::focusNextPrevChild(bool next).
[override virtual protected]
void QPlainTextEdit::focusOutEvent(QFocusEvent *e)
Reimplements: QWidget::focusOutEvent(QFocusEvent *event).
[protected]
QAbstractTextDocumentLayout::PaintContext QPlainTextEdit::getPaintContext() const
Gibt den Farbkontext für viewport() zurück, nützlich nur bei der Neuimplementierung von paintEvent().
[override virtual protected]
void QPlainTextEdit::inputMethodEvent(QInputMethodEvent *e)
Reimplements: QWidget::inputMethodEvent(QInputMethodEvent *event).
[override virtual]
QVariant QPlainTextEdit::inputMethodQuery(Qt::InputMethodQuery property) const
Reimplements: QWidget::inputMethodQuery(Qt::InputMethodQuery query) const.
[virtual protected]
void QPlainTextEdit::insertFromMimeData(const QMimeData *source)
Diese Funktion fügt den Inhalt des durch source angegebenen MIME-Datenobjekts in die Texteingabe an der aktuellen Cursorposition ein. Sie wird immer dann aufgerufen, wenn Text als Ergebnis einer Einfügeoperation in die Zwischenablage eingefügt wird oder wenn die Texteingabe Daten aus einer Drag&Drop-Operation annimmt.
[slot]
void QPlainTextEdit::insertPlainText(const QString &text)
Bequemer Slot, der text an der aktuellen Cursorposition einfügt.
Er ist äquivalent zu
edit->textCursor().insertText(text);
[override virtual protected]
void QPlainTextEdit::keyPressEvent(QKeyEvent *e)
Reimplements: QAbstractScrollArea::keyPressEvent(QKeyEvent *e).
[override virtual protected]
void QPlainTextEdit::keyReleaseEvent(QKeyEvent *e)
Reimplements: QWidget::keyReleaseEvent(QKeyEvent *event).
[virtual]
QVariant QPlainTextEdit::loadResource(int type, const QUrl &name)
Lädt die durch die angegebenen type und name spezifizierte Ressource.
Diese Funktion ist eine Erweiterung von QTextDocument::loadResource().
Siehe auch QTextDocument::loadResource().
void QPlainTextEdit::mergeCurrentCharFormat(const QTextCharFormat &modifier)
Fügt die in modifier angegebenen Eigenschaften in das aktuelle Zeichenformat ein, indem QTextCursor::mergeCharFormat am Cursor des Editors aufgerufen wird. Wenn der Editor eine Auswahl hat, werden die Eigenschaften von modifier direkt auf die Auswahl angewendet.
Siehe auch QTextCursor::mergeCharFormat().
[signal]
void QPlainTextEdit::modificationChanged(bool changed)
Dieses Signal wird immer dann ausgegeben, wenn sich der Inhalt des Dokuments in einer Weise ändert, die den Änderungsstatus beeinflusst. Wenn changed true ist, wurde das Dokument geändert; andernfalls ist es false.
Wenn Sie zum Beispiel setModified(false) für ein Dokument aufrufen und dann Text einfügen, wird das Signal ausgegeben. Wenn Sie diesen Vorgang rückgängig machen, so dass das Dokument in seinen ursprünglichen, unveränderten Zustand zurückkehrt, wird das Signal erneut ausgegeben.
[override virtual protected]
void QPlainTextEdit::mouseDoubleClickEvent(QMouseEvent *e)
Reimplements: QAbstractScrollArea::mouseDoubleClickEvent(QMouseEvent *e).
[override virtual protected]
void QPlainTextEdit::mouseMoveEvent(QMouseEvent *e)
Reimplements: QAbstractScrollArea::mouseMoveEvent(QMouseEvent *e).
[override virtual protected]
void QPlainTextEdit::mousePressEvent(QMouseEvent *e)
Reimplements: QAbstractScrollArea::mousePressEvent(QMouseEvent *e).
[override virtual protected]
void QPlainTextEdit::mouseReleaseEvent(QMouseEvent *e)
Reimplements: QAbstractScrollArea::mouseReleaseEvent(QMouseEvent *e).
void QPlainTextEdit::moveCursor(QTextCursor::MoveOperation operation, QTextCursor::MoveMode mode = QTextCursor::MoveAnchor)
Bewegt den Cursor, indem er den angegebenen operation ausführt.
Wenn mode gleich QTextCursor::KeepAnchor ist, markiert der Cursor den Text, über den er sich bewegt. Dies ist der gleiche Effekt, den der Benutzer erzielt, wenn er die Umschalttaste gedrückt hält und den Cursor mit den Cursortasten bewegt.
Siehe auch QTextCursor::movePosition().
[override virtual protected]
void QPlainTextEdit::paintEvent(QPaintEvent *e)
Reimplements: QAbstractScrollArea::paintEvent(QPaintEvent *event).
[slot]
void QPlainTextEdit::paste()
Fügt den Text aus der Zwischenablage in die Texteingabe an der aktuellen Cursorposition ein.
Wenn sich kein Text in der Zwischenablage befindet, passiert nichts.
Um das Verhalten dieser Funktion zu ändern, d.h. um zu modifizieren, was QPlainTextEdit einfügen kann und wie es eingefügt wird, müssen die virtuellen Funktionen canInsertFromMimeData() und insertFromMimeData() neu implementiert werden.
void QPlainTextEdit::print(QPagedPaintDevice *printer) const
Convenience-Funktion, um das Dokument der Textbearbeitung auf die angegebene printer zu drucken. Dies ist äquivalent zum direkten Aufruf der Druckmethode für das Dokument, außer dass diese Funktion auch QPrinter::Selection als Druckbereich unterstützt.
Siehe auch QTextDocument::print().
[slot]
void QPlainTextEdit::redo()
Wiederholt den letzten Vorgang.
Wenn es keinen Vorgang gibt, der wiederhergestellt werden kann, d. h. kein Wiederherstellungsschritt in der Undo-/Redo-Historie vorhanden ist, passiert nichts.
Siehe auch undo().
[signal]
void QPlainTextEdit::redoAvailable(bool available)
Dieses Signal wird ausgegeben, wenn Redo-Operationen verfügbar (available ist true) oder nicht verfügbar (available ist false) werden.
[override virtual protected]
void QPlainTextEdit::resizeEvent(QResizeEvent *e)
Reimplements: QAbstractScrollArea::resizeEvent(QResizeEvent *event).
[override virtual protected]
void QPlainTextEdit::scrollContentsBy(int dx, int dy)
Reimplements: QAbstractScrollArea::scrollContentsBy(int dx, int dy).
[slot]
void QPlainTextEdit::selectAll()
Markiert den gesamten Text.
Siehe auch copy(), cut(), und textCursor().
[signal]
void QPlainTextEdit::selectionChanged()
Dieses Signal wird ausgegeben, wenn sich die Auswahl ändert.
Siehe auch copyAvailable().
void QPlainTextEdit::setCurrentCharFormat(const QTextCharFormat &format)
Legt das Zeichenformat fest, das beim Einfügen von neuem Text in format durch den Aufruf von QTextCursor::setCharFormat() am Cursor des Editors verwendet werden soll. Wenn der Editor eine Auswahl hat, wird das Zeichenformat direkt auf die Auswahl angewendet.
Siehe auch currentCharFormat().
void QPlainTextEdit::setDocument(QTextDocument *document)
Macht document zum neuen Dokument des Texteditors.
Das übergeordnete QObject des bereitgestellten Dokuments bleibt der Eigentümer des Objekts. Wenn das aktuelle Dokument ein Kind des Texteditors ist, wird es gelöscht.
Das Dokument muss ein Dokumentenlayout haben, das QPlainTextDocumentLayout erbt (siehe QTextDocument::setDocumentLayout()).
Siehe auch document().
void QPlainTextEdit::setExtraSelections(const QList<QTextEdit::ExtraSelection> &selections)
Mit dieser Funktion können bestimmte Bereiche im Dokument vorübergehend mit einer bestimmten Farbe markiert werden, die als selections angegeben wird. Dies kann z.B. in einem Programmiereditor nützlich sein, um eine ganze Textzeile mit einer bestimmten Hintergrundfarbe zu markieren, um das Vorhandensein eines Haltepunktes anzuzeigen.
Siehe auch QTextEdit::ExtraSelection und extraSelections().
[slot]
void QPlainTextEdit::setPlainText(const QString &text)
Ändert den Text der Texteingabe in die Zeichenkette text. Jeder vorherige Text wird entfernt.
text wird als reiner Text interpretiert.
Anmerkungen:
- Die Undo/Redo-Historie wird ebenfalls gelöscht.
- currentCharFormat() wird zurückgesetzt, es sei denn, textCursor() befindet sich bereits am Anfang des Dokuments.
Hinweis: Setter-Funktion für die Eigenschaft plainText.
Siehe auch toPlainText().
void QPlainTextEdit::setTextCursor(const QTextCursor &cursor)
Legt die sichtbare cursor fest.
Siehe auch textCursor().
[override virtual protected]
void QPlainTextEdit::showEvent(QShowEvent *)
Reimplements: QWidget::showEvent(QShowEvent *event).
[signal]
void QPlainTextEdit::textChanged()
Dieses Signal wird immer dann ausgegeben, wenn sich der Inhalt des Dokuments ändert, z. B. wenn Text eingefügt oder gelöscht wird oder wenn eine Formatierung vorgenommen wird.
Hinweis: Benachrichtigungssignal für die Eigenschaft plainText.
QTextCursor QPlainTextEdit::textCursor() const
Gibt eine Kopie von QTextCursor zurück, die den derzeit sichtbaren Cursor darstellt. Beachten Sie, dass sich Änderungen am zurückgegebenen Cursor nicht auf den Cursor von QPlainTextEdit auswirken; verwenden Sie setTextCursor(), um den sichtbaren Cursor zu aktualisieren.
Siehe auch setTextCursor().
QString QPlainTextEdit::toPlainText() const
Gibt den Text der Texteingabe als reinen Text zurück.
Hinweis: Getter-Funktion für die Eigenschaft plainText.
Siehe auch QPlainTextEdit::setPlainText().
[slot]
void QPlainTextEdit::undo()
Macht den letzten Vorgang rückgängig.
Wenn es keinen Vorgang gibt, der rückgängig zu machen ist, d.h. wenn es keinen Rückgängig-Schritt in der Undo/Redo-Historie gibt, passiert nichts.
Siehe auch redo().
[signal]
void QPlainTextEdit::undoAvailable(bool available)
Dieses Signal wird ausgegeben, wenn Rückgängigmachungen verfügbar (available ist true) oder nicht verfügbar (available ist false) werden.
[signal]
void QPlainTextEdit::updateRequest(const QRect &rect, int dy)
Dieses Signal wird ausgesendet, wenn das Textdokument eine Aktualisierung des angegebenen rect benötigt. Wenn der Text gescrollt wird, deckt rect den gesamten Bereich des Ansichtsfensters ab. Wenn der Text vertikal gescrollt wird, überträgt dy die Anzahl der Pixel, um die das Ansichtsfenster gescrollt wurde.
Der Zweck des Signals ist es, zusätzliche Widgets in Unterklassen für die Textbearbeitung zu unterstützen, die z.B. Zeilennummern, Haltepunkte oder andere zusätzliche Informationen anzeigen.
[override virtual protected]
void QPlainTextEdit::wheelEvent(QWheelEvent *e)
Reimplements: QAbstractScrollArea::wheelEvent(QWheelEvent *e).
[slot]
void QPlainTextEdit::zoomIn(int range = 1)
Vergrößert den Text, indem es die Basisschriftgröße range Punkte vergrößert und alle Schriftgrößen auf die neue Größe umrechnet. Die Größe der Bilder wird dabei nicht verändert.
Siehe auch zoomOut().
[slot]
void QPlainTextEdit::zoomOut(int range = 1)
Verkleinert den Text, indem die Basisschriftgröße range verkleinert wird und alle Schriftgrößen auf die neue Größe neu berechnet werden. Die Größe der Bilder wird dabei nicht verändert.
Siehe auch zoomIn().
© 2025 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.