与自动换行相关的函数:QLabel::setWordWrap(bool)
原文文档:If this property is true then label text is wrapped where necessary at word-breaks; otherwise it is not wrapped at all.
这里有个关键点就是要想成功换行就要有word-breaks,测试发现如果内容为全英文,数字等ASCII编码的内容,word-breaks为空格,如:
abcddfegsfdseg 12112312343
则自动换行后为:
abcddfegsfdseg
12112312343
而对于中文内容来说,则可以直接自动换行,不需要word-breaks
另一个关键点是QLabel必须要足够宽才能显示出自动换行的内容。有时候虽然调用了setWordWrap(true),还是没有自动换行是因为虽然换行了但你看不到,QLabel的height不够大。此时可以调用QWidget::adjustSize()函数让控件自适应内容。