J'ai essayé: a essayé Si le texte est plus long que la largeur de jeu, je veux que la phrase tombe en panne. resizecolummumumnstoContents code> et
restifizerowstocontents code>, mais échoué. p>
Courante, la partie longue de la phrase ne se présente pas. P> p>
3 Réponses :
Veuillez noter que si l'un des mots contenus dans l'élément est plus large que la taille de la colonne, le texte sera supprimé à partir de ce point (par défaut, vous verrez des ellipses: Setwordwrap code> Définit le comportement du texte, sans modifier la taille de la colonne. Si vous devez garder la largeur de colonne fixe, appelez
ResizerowstoConTents CODE>
qtablewidgettitem code>). p>
Ceci ajustera le mot emballage automatiquement chaque fois qu'une colonne redimensionne:
Comme mentionné dans le commentaire de la question, définir la taille de la ligne explicitement à une certaine valeur semble fonctionner:
tableWidget->resizeRowsToContents(); tableWidget->verticalHeader()->setDefaultSectionSize(50);
La documentation indique que par défaut wordwrap code> est
true code>. Donc oui, vous n'avez pas à l'appeler. Cependant, je ne vois rien d'envelopper. Il peut être élu si la largeur de la colonne est trop petite, mais je voudrais envelopper comme en hauteur de la culture cellulaire et le texte apparaissant sur un nombre de lignes au besoin ... est-ce possible?
Avez-vous essayé de définir la hauteur de la ligne explicitement? Si cela ne fonctionne pas, vous devrez peut-être mettre en œuvre une sous-classe de qstyleditemdelegate pour pouvoir changer TailleHint (). Voulez-vous être capable de modifier le contenu de la cellule?