QTextEdit vs QPlainTextEdit
Quelle est la différence entre QTextEdit et QPlainTextEdit, pourquoi utiliser l'un plutôt que l'autre?
JE CODE un éditeur de texte comme un exercice pour apprendre Qt5, et maintenant je me demande s'il faut utiliser QTextEdit ou QPlainTextEdit.
Jusqu'à présent, j'ai seulement découvert que vous pouvez afficher des images dans QTextEdit, mais à part cela, elles me semblent quelque peu identiques.
Mon éditeur de texte devrait prendre en charge une coloration syntaxique de base (probablement en utilisant le signal textChanged()), mais c'est à peu près aussi loin que les exigences vont.
Recherches Google pour "QTextEdit vs QPlainTextEdit" et "QTextEdit comparé à QPlainTextEdit" ne m'a pas donné de résultats décents qui compareraient les deux classes.
1 réponses
À partir de la documentation de Qt :
QPlainTextEditest un visualiseur/éditeur avancé supportant le texte brut. Il est optimisé pour gérer des documents volumineux et pour répondre rapidement à l'utilisateur entrée.QPlainText utilise à peu près la même technologie et les mêmes concepts que
QTextEdit, mais est optimisé pour la gestion du texte brut.
QPlainTextEditfonctionne sur les paragraphes et de caractères. Un paragraphe est un chaîne formatée qui est enveloppée de mots pour s'adapter à la largeur de la widget. Par par défaut lors de la lecture de texte brut, une nouvelle ligne paragraphe. Un document se compose de zéro ou plusieurs paragraphes. Paragraphe sont séparés par des sauts de ligne. Chaque caractère d'un paragraphe a ses propres attributs, par exemple, la police et la couleur.
Et plus tard:
Différences avec QTextEdit
QPlainTextEditest une classe mince, implémentée en utilisant la plupart des technologie derrièreQTextEditetQTextDocument. Ses performances plus d'avantagesQTextEditprovient principalement de l'utilisation d'un mise en page simplifiée du texte appeléeQPlainTextDocumentLayoutsur le texte document (voirQTextDocument::setDocumentLayout()). Le texte brut la mise en page du document ne prend pas en charge les tables ni les cadres intégrés, et remplace un calcul de la hauteur exacte du pixel par un calcul ligne par ligne respectivement approche de défilement paragraphe par paragraphe. De ce fait, il possible de gérer des documents beaucoup plus grands, et toujours redimensionner l'éditeur Avec Line wrap activé en temps réel. Il fait également pour un visionneuse de journal rapide (voirsetMaximumBlockCount()).
Donc, la différence est que QPlainTextEdit est optimisé pour la gestion du texte brut, et peut être utilisé même avec de très gros fichiers de texte brut. De plus, la façon dont le texte est formaté est plus simple.
Si vous envisagez de ne prendre en charge que des textes simples, alors QPlainTextEdit est le bon choix.