Qt QFontMetrics boundingRect无法计算换行后的矩形尺寸

vitasr 2017-11-25 03:34:25
请教一下,为什么我的代码中无法计算一个QString换行后所占用的矩形的尺寸?返回的结果是只有一行的矩形大小,为什么不是多行的?我已经使用了Qt::TextWordWrap标志,谢谢!代码如下:

QPainter painter(this);
QString text("1234567890123456789012345678901234567890"
"1234567890123456789012345678901234567890"
"1234567890123456789012345678901234567890"
"1234567890123456789012345678901234567890");
int width = this->width()-40;
int flags = Qt::TextWordWrap;
qDebug()<<"font:"<<painter.font().pointSize()<<",pixelSize="<<painter.font().pixelSize();

QFontMetrics metrics = painter.fontMetrics();
QRect textBoundingRect = metrics.boundingRect(QRect(0,0,width,0),flags,text);
painter.translate(20,20);
painter.drawRect(textBoundingRect);
painter.drawText(textBoundingRect,Qt::TextWordWrap,text);
环境:windows7-32,Qt Creator3.4.2
...全文
597 回复 打赏 收藏 转发到动态 举报
写回复
用AI写文章
回复
切换为时间正序
请发表友善的回复…
发表回复

24,854

社区成员

发帖
与我相关
我的任务
社区描述
C/C++ 工具平台和程序库
社区管理员
  • 工具平台和程序库社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧