至今不清楚算错原因,目前只能用以下方法临时解决:
QFont font = textEdit.font();
QFontMetricsF fontMetrics(font);
QString text = textEdit.text();
text += tr("Z"); // 随便加一个字符
qreal width = fontMetrics.width(text);
textEdit.resize(width, height);
textEdit.setCursorPosition(0); // 需要,否则第一个字符离textEdit的左边界非常近
有谁知道真正的正确方法呀?