ICode9

精准搜索请尝试: 精确搜索
首页 > 其他分享> 文章详细

Qt设置文字长度错过宽度时后面出现省略号

2021-09-24 20:00:49  阅读:161  来源: 互联网

标签:Qt 省略号 后面 错过 metrics QString 换行符


需求

设置某个编辑框,当文本长度比显示宽度要长时, 依据需求要将文本后面显示为省略号。
我在设计时

QFontMetrics metrics(m_contentFont);
QString showText = metrics.elidedText(content, Qt::ElideRight, m_pixResolution.width() - 20); 
ui.label->setText(showText);

结果如下
在这里插入图片描述
这种设计有一个问题就是, 当我输入QString 哪怕包含换行符时, 此时依然只显示一行并且后面显示省略号。为了能够实现可以依据实际显示, 对于处理包含换行符时, 采用split将换行符作为分割,得到QStringList, 然后一次遍历进行elidedText处理得到相应的字符串,然后在其后面追加换行符并合并所有字符串。

标签:Qt,省略号,后面,错过,metrics,QString,换行符
来源: https://blog.csdn.net/liunanya/article/details/120461924

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有