QTextBlock Class
La classe QTextBlock fournit un conteneur pour les fragments de texte dans une page QTextDocument. Plus....
| En-tête : | #include <QTextBlock> |
| CMake : | find_package(Qt6 REQUIRED COMPONENTS Gui)target_link_libraries(mytarget PRIVATE Qt6::Gui) |
| qmake : | QT += gui |
- Liste de tous les membres, y compris les membres hérités
- QTextBlock fait partie de Rich Text Processing APIs.
Remarque : toutes les fonctions de cette classe sont réentrantes.
Types publics
Fonctions publiques
| QTextBlock(const QTextBlock &other) | |
| QTextBlock::iterator | begin() const |
| QTextBlockFormat | blockFormat() const |
| int | blockFormatIndex() const |
| int | blockNumber() const |
| QTextCharFormat | charFormat() const |
| int | charFormatIndex() const |
| void | clearLayout() |
| bool | contains(int position) const |
| const QTextDocument * | document() const |
| QTextBlock::iterator | end() const |
| int | firstLineNumber() const |
| bool | isValid() const |
| bool | isVisible() const |
| QTextLayout * | layout() const |
| int | length() const |
| int | lineCount() const |
| QTextBlock | next() const |
| int | position() const |
| QTextBlock | previous() const |
| int | revision() const |
| void | setLineCount(int count) |
| void | setRevision(int rev) |
| void | setUserData(QTextBlockUserData *data) |
| void | setUserState(int state) |
| void | setVisible(bool visible) |
| QString | text() const |
| Qt::LayoutDirection | textDirection() const |
| QList<QTextLayout::FormatRange> | textFormats() const |
| QTextList * | textList() const |
| QTextBlockUserData * | userData() const |
| int | userState() const |
| bool | operator!=(const QTextBlock &other) const |
| bool | operator<(const QTextBlock &other) const |
| QTextBlock & | operator=(const QTextBlock &other) |
| bool | operator==(const QTextBlock &other) const |
Description détaillée
Un bloc de texte encapsule un bloc ou un paragraphe de texte dans un document QTextDocument. QTextBlock fournit un accès en lecture seule à la structure bloc/paragraphe des documents QText. Il est principalement utile si vous souhaitez mettre en œuvre vos propres mises en page pour la représentation visuelle d'un document QTextDocument, ou si vous souhaitez itérer sur un document et en écrire le contenu dans votre propre format personnalisé.
Les blocs de texte sont créés par leurs documents parents. Si vous devez créer un nouveau bloc de texte ou modifier le contenu d'un document tout en examinant son contenu, utilisez plutôt l'interface basée sur le curseur fournie par QTextCursor.
Chaque bloc de texte est situé à un endroit précis, position(), dans un document document(). Le contenu du bloc peut être obtenu en utilisant la fonction text(). La fonction length() détermine la taille du bloc dans le document (y compris les caractères de formatage). Les propriétés visuelles du bloc sont déterminées par son texte layout(), son charFormat() et son blockFormat().
Les fonctions next() et previous() permettent l'itération sur des blocs valides consécutifs dans un document à condition que le document ne soit pas modifié par d'autres moyens pendant le processus d'itération. Il convient de noter que, bien que les blocs soient renvoyés dans l'ordre, les blocs adjacents peuvent provenir de différents endroits de la structure du document. La validité d'un bloc peut être déterminée en appelant isValid().
QTextBlock fournit des opérateurs de comparaison pour faciliter le travail avec les blocs : operator==() compare deux blocs pour l'égalité, operator!=() compare deux blocs pour l'inégalité, et operator<() détermine si un bloc précède un autre dans le même document.

Voir également QTextBlockFormat, QTextCharFormat, et QTextFragment.
Documentation sur les types de membres
QTextBlock::Iterator
Synonyme de style Qt pour QTextBlock::iterator.
Documentation des fonctions membres
QTextBlock::QTextBlock(const QTextBlock &other)
Copie les attributs du bloc de texte other dans ce bloc de texte.
QTextBlock::iterator QTextBlock::begin() const
Renvoie un itérateur de bloc de texte pointant vers le début du bloc de texte.
Voir également end().
QTextBlockFormat QTextBlock::blockFormat() const
Renvoie l'adresse QTextBlockFormat qui décrit les propriétés spécifiques au bloc.
Voir également charFormat().
int QTextBlock::blockFormatIndex() const
Renvoie un index dans la liste interne des formats de blocs du document pour le format du bloc de texte.
Voir aussi QTextDocument::allFormats().
int QTextBlock::blockNumber() const
Renvoie le numéro de ce bloc, ou -1 si le bloc n'est pas valide.
Voir aussi QTextCursor::blockNumber().
QTextCharFormat QTextBlock::charFormat() const
Renvoie l'adresse QTextCharFormat qui décrit le format de caractères du bloc. Le format de caractères du bloc est utilisé lors de l'insertion de texte dans un bloc vide.
Voir également blockFormat().
int QTextBlock::charFormatIndex() const
Renvoie un index dans la liste interne des formats de caractères du document pour le format de caractères du bloc de texte.
Voir aussi QTextDocument::allFormats().
void QTextBlock::clearLayout()
Efface le site QTextLayout utilisé pour la mise en page et l'affichage du contenu du bloc.
Voir aussi layout().
bool QTextBlock::contains(int position) const
Renvoie true si l'adresse position est située dans le bloc de texte ; sinon, renvoie false.
const QTextDocument *QTextBlock::document() const
Renvoie le document de texte auquel appartient ce bloc de texte, ou nullptr si le bloc de texte n'appartient à aucun document.
QTextBlock::iterator QTextBlock::end() const
Renvoie un itérateur de bloc de texte pointant vers la fin du bloc de texte.
Voir aussi begin(), next(), et previous().
int QTextBlock::firstLineNumber() const
Renvoie le numéro de la première ligne de ce bloc, ou -1 si le bloc n'est pas valide. Sauf si la mise en page le permet, le numéro de ligne est identique au numéro de bloc.
Voir aussi QTextBlock::blockNumber().
bool QTextBlock::isValid() const
Renvoie true si ce bloc de texte est valide, sinon renvoie false.
bool QTextBlock::isVisible() const
Renvoie true si le bloc est visible ; sinon, renvoie false.
Voir aussi setVisible().
QTextLayout *QTextBlock::layout() const
Renvoie l'objet QTextLayout utilisé pour mettre en page et afficher le contenu du bloc.
Notez que l'objet QTextLayout renvoyé ne peut être modifié qu'à partir de l'implémentation documentChanged d'une sous-classe QAbstractTextDocumentLayout. Toute modification appliquée de l'extérieur entraîne un comportement indéfini.
Voir également clearLayout().
int QTextBlock::length() const
Renvoie la longueur du bloc en caractères.
Remarque : la longueur renvoyée inclut tous les caractères de formatage, par exemple la nouvelle ligne.
Voir également text(), charFormat() et blockFormat().
int QTextBlock::lineCount() const
Renvoie le nombre de lignes. Cette fonctionnalité n'est pas prise en charge par toutes les mises en page de documents.
Voir aussi setLineCount().
QTextBlock QTextBlock::next() const
Renvoie le bloc de texte dans le document qui suit ce bloc, ou un bloc de texte vide s'il s'agit du dernier.
Notez que le bloc suivant peut se trouver dans un cadre ou un tableau différent de ce bloc.
Voir aussi previous(), begin() et end().
int QTextBlock::position() const
Renvoie l'index du premier caractère du bloc dans le document.
QTextBlock QTextBlock::previous() const
Renvoie le bloc de texte du document précédant ce bloc, ou un bloc de texte vide s'il s'agit du premier.
Notez que le bloc précédent peut se trouver dans un cadre ou une table différents de ceux de ce bloc.
Voir aussi next(), begin() et end().
int QTextBlock::revision() const
Renvoie la révision des blocs.
Voir aussi setRevision() et QTextDocument::revision().
void QTextBlock::setLineCount(int count)
Fixe le nombre de lignes à count.
Voir aussi lineCount().
void QTextBlock::setRevision(int rev)
Fixe la révision d'un bloc à rev.
Voir aussi revision() et QTextDocument::revision().
void QTextBlock::setUserData(QTextBlockUserData *data)
Attache l'objet data au bloc de texte.
QTextBlockUserData peut être utilisé pour stocker des paramètres personnalisés. La propriété est transmise au document texte sous-jacent, c'est-à-dire que l'objet QTextBlockUserData fourni sera supprimé si le bloc texte correspondant est supprimé. L'objet de données utilisateur n'est pas stocké dans l'historique d'annulation, il ne sera donc pas disponible après l'annulation de la suppression d'un bloc de texte.
Par exemple, si vous écrivez un éditeur de programmation dans un IDE, vous pouvez permettre à l'utilisateur de définir visuellement des points d'arrêt dans votre code pour un débogueur intégré. Dans un éditeur de programmation, une ligne de texte correspond généralement à un QTextBlock. L'interface QTextBlockUserData permet au développeur de stocker des données pour chaque QTextBlock, comme par exemple les lignes du code source dans lesquelles l'utilisateur a placé un point d'arrêt. Bien sûr, ces données pourraient également être stockées à l'extérieur, mais en les stockant à l'intérieur de QTextDocument, elles seront par exemple automatiquement supprimées lorsque l'utilisateur effacera la ligne associée. Il s'agit en fait d'un moyen de stocker des informations personnalisées dans QTextDocument sans utiliser de propriétés personnalisées dans QTextFormat, ce qui affecterait la pile undo/redo.
Voir aussi userData().
void QTextBlock::setUserState(int state)
Enregistre la valeur entière state spécifiée dans le bloc de texte. Cela peut être utile, par exemple, dans un surligneur syntaxique pour stocker l'état d'analyse du texte.
Voir aussi userState().
void QTextBlock::setVisible(bool visible)
Fixe la visibilité du bloc à visible.
Voir aussi isVisible().
QString QTextBlock::text() const
Renvoie le contenu du bloc sous forme de texte brut.
Voir aussi length(), charFormat() et blockFormat().
Qt::LayoutDirection QTextBlock::textDirection() const
Renvoie la direction du texte résolue.
Si le bloc n'a pas de direction explicite, la direction sera déterminée à partir du contenu du bloc. Retourne soit Qt::LeftToRight soit Qt::RightToLeft.
Voir également QTextFormat::layoutDirection(), QString::isRightToLeft() et Qt::LayoutDirection.
QList<QTextLayout::FormatRange> QTextBlock::textFormats() const
Renvoie les options de format de texte du bloc sous la forme d'une liste de plages continues de QTextCharFormat. Le format de caractère de la plage est utilisé lors de l'insertion de texte à l'intérieur des limites de la plage.
Voir également charFormat() et blockFormat().
QTextList *QTextBlock::textList() const
Si le bloc représente un élément de liste, il renvoie la liste à laquelle l'élément appartient ; sinon, il renvoie nullptr.
QTextBlockUserData *QTextBlock::userData() const
Renvoie un pointeur sur un objet QTextBlockUserData, s'il a été défini avec setUserData(), ou nullptr.
Voir aussi setUserData().
int QTextBlock::userState() const
Renvoie la valeur entière précédemment définie avec setUserState() ou -1.
Voir aussi setUserState().
bool QTextBlock::operator!=(const QTextBlock &other) const
Renvoie true si ce bloc de texte est différent du bloc de texte other.
bool QTextBlock::operator<(const QTextBlock &other) const
Renvoie true si ce bloc de texte se trouve avant le bloc de texte other dans le document.
QTextBlock &QTextBlock::operator=(const QTextBlock &other)
Attribue le bloc de texte other à ce bloc de texte.
bool QTextBlock::operator==(const QTextBlock &other) const
Renvoie true si ce bloc de texte est identique au bloc de texte other.
© 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.