如果这些单词过长,是否有办法允许QLabel
打破单词?我见过
q_label->setWordWrap(true)
但是它可以使用空格,但是如果单个单词太长,则会溢出...我想要类似
word-break: break-all
的网站开发工具我也看过
QTextDocument
,但是不允许有固定的宽度和不固定的高度
最佳答案
据我所知,没有现成的方法可以自动将单词分为QLabel
的几行。
您可以编码或以固定长度在文本中手动插入换行符或空格,因此QLabel::setWordWrap()
可以正常工作。
QLabel *pLabel = new QLabel(this);
pLabel->setText("first line\nsecond line\nthird line\n");
pLabel->setWordWrap(true);
您也可以使用QTextDocument。它的setDefaultTextOption
方法允许您设置QTextOption。 QTextOption::setWrapMode(QTextOption::WrapAnywhere)
允许在一行的任意点换行。
关于c++ - QLabel “break”单词如果太长,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/63587018/