首页| 论坛| 消息

回复: 基于QtWidget的聊天气泡
#11 回 listen342325 的帖子 [nigoole 06-17 10:37]
listen342325:能不能复制?widget不断重绘会不会高cpu? (2019-06-17 09:31)
纯文本的数据,cpu波动不大,如果多放几张高清大图消耗还有得看,不过图片可以处理,显示没必要加载高清,可以先图片弄成预览的分辨率,点击查看高清大图。
另外列表也在改进中,会做成只会刷新固定的个数的item,滚动切换当前显示的item,这样大大减少CPU开支!
#12 [青春的年代 06-17 11:45]
倪总厉害,单纯的技术没有任何广告点赞,要是贴上代码就更完美了
#13 回 青春的年代 的帖子 [nigoole 06-17 14:39]
青春的年代:倪总厉害,单纯的技术没有任何广告点赞,要是贴上代码就更完美了 (2019-06-17 11:45) 
暂时还没打算开源!~后面再说吧~~毕竟还是雏形!
#14 [nigoole 06-17 14:43]
简单介绍下富文本的绘制吧:
QTextDocument+QPainter完成的,
QTextDocument document;
QTextOption option;
option.setAlignment(Qt::AlignJustify);
option.setWrapMode(QTextOption::WordWrap);
document.setHtml(item->m_strText);
document.setDefaultTextOption(option);
document.setDefaultFont(item->m_font);
document.setDocumentMargin(2);
document.setTextWidth(bubbleRect.width());
document.setDefaultStyleSheet(QString("*{color: %1;}").arg(item->m_strTextColor));
painter->translate(bubbleRect.topLeft());
document.drawContents(painter);// 绘制
另外试了下gif动图,目前只能依赖QMovie实现,效果勉强能接受,但是执行效率有点头疼,后面在研究改进算法
#15 [mengkun 06-18 08:45]
换用新版的 QQ 小表情吧,感觉好看些

<< 1 2 3 4 5 >> (3/6)

回复 发表
主题 版块