En esta página

QPlainTextDocumentLayout Class

La clase QPlainTextDocumentLayout implementa un diseño de texto plano para QTextDocument. Más...

Cabecera: #include <QPlainTextDocumentLayout>
CMake: find_package(Qt6 REQUIRED COMPONENTS Widgets)
target_link_libraries(mytarget PRIVATE Qt6::Widgets)
qmake: QT += widgets
Hereda: QAbstractTextDocumentLayout

Propiedades

Funciones públicas

QPlainTextDocumentLayout(QTextDocument *document)
virtual ~QPlainTextDocumentLayout()
int cursorWidth() const
void ensureBlockLayout(const QTextBlock &block) const
void requestUpdate()
void setCursorWidth(int width)

Funciones públicas reimplementadas

virtual QRectF blockBoundingRect(const QTextBlock &block) const override
virtual QSizeF documentSize() const override
virtual void draw(QPainter *, const QAbstractTextDocumentLayout::PaintContext &) override
virtual QRectF frameBoundingRect(QTextFrame *) const override
virtual int hitTest(const QPointF &, Qt::HitTestAccuracy) const override
virtual int pageCount() const override

Funciones protegidas reimplementadas

virtual void documentChanged(int from, int charsRemoved, int charsAdded) override

Descripción Detallada

Un QPlainTextDocumentLayout es requerido para documentos de texto que pueden ser mostrados o editados en un QPlainTextEdit. Ver QTextDocument::setDocumentLayout().

QPlainTextDocumentLayout utiliza la API QAbstractTextDocumentLayout que requiere QTextDocument, pero la redefine parcialmente para soportar mejor el texto plano. Por ejemplo, no opera sobre píxeles verticales, sino sobre párrafos (llamados bloques). La altura de un documento es idéntica al número de párrafos que contiene. El diseño tampoco soporta tablas o marcos anidados, o cualquier tipo de diseño de texto avanzado que vaya más allá de una lista de párrafos con resaltado de sintaxis.

Documentación de propiedades

cursorWidth : int

Esta propiedad especifica la anchura del cursor en píxeles. El valor por defecto es 1.

Funciones de acceso:

int cursorWidth() const
void setCursorWidth(int width)

Documentación de funciones miembro

QPlainTextDocumentLayout::QPlainTextDocumentLayout(QTextDocument *document)

Construye un diseño de documento de texto plano para el texto document.

[virtual noexcept] QPlainTextDocumentLayout::~QPlainTextDocumentLayout()

Destruye un diseño de documento de texto plano.

[override virtual] QRectF QPlainTextDocumentLayout::blockBoundingRect(const QTextBlock &block) const

Reimplementa: QAbstractTextDocumentLayout::blockBoundingRect(const QTextBlock &block) const.

[override virtual protected] void QPlainTextDocumentLayout::documentChanged(int from, int charsRemoved, int charsAdded)

Reimplementa: QAbstractTextDocumentLayout::documentChanged(int position, int charsRemoved, int charsAdded).

[override virtual] QSizeF QPlainTextDocumentLayout::documentSize() const

Reimplementa: QAbstractTextDocumentLayout::documentSize() const.

[override virtual] void QPlainTextDocumentLayout::draw(QPainter *, const QAbstractTextDocumentLayout::PaintContext &)

Reimplementa: QAbstractTextDocumentLayout::draw(QPainter *painter, const QAbstractTextDocumentLayout::PaintContext &context).

void QPlainTextDocumentLayout::ensureBlockLayout(const QTextBlock &block) const

Asegura que block tiene un diseño válido

[override virtual] QRectF QPlainTextDocumentLayout::frameBoundingRect(QTextFrame *) const

Reimplementa: QAbstractTextDocumentLayout::frameBoundingRect(QTextFrame *frame) const.

[override virtual] int QPlainTextDocumentLayout::hitTest(const QPointF &, Qt::HitTestAccuracy) const

Reimplementa: QAbstractTextDocumentLayout::hitTest(const QPointF &point, Qt::HitTestAccuracy accuracy) const.

[override virtual] int QPlainTextDocumentLayout::pageCount() const

Reimplementa: QAbstractTextDocumentLayout::pageCount() const.

void QPlainTextDocumentLayout::requestUpdate()

Solicita una actualización completa de todas las vistas.

© 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.