首页| 论坛| 消息

回复: Qt--滚动字幕(传说中的跑马灯)【搞定】
#6 [cahwxy 06-13 11:22]
不会的
说白了就是每隔一段时间调用 setText ,只是每次内容长度不一样而已,所以就是走马灯效果
#7 回 6楼(cahwxy) 的帖子 [longwenbiao 06-17 09:15]
cahwxy,能给下你的联系方式吗?
#8 [jc4123 12-11 17:19]
学习了,谢谢分享啊
#9 [cycloneii 12-11 21:19]
我看电视也好,LED显示牌也好,滚动字幕都是前一条消息显示完了(也就是滚动出了屏幕,此时屏幕没有显示任何字幕),然后才会显示下一条消息。
你要避免滚动,可以,这样作:
1)增加一个成员QString,setText之后暂时不更改mytext变量,只设置这个成员临时保存新的字符串
在79/80行的这个offset回滚成零的时候,将mytext设置临时成员保存的信字符串数值
2)为什么offset是从0到字符串的宽度呢?难道不应该是从-fontMetrics().width(text()) 到+fontMetrics().width(text())?这样的话,字幕才是从最右边一步步的移动到左边,直到完全显示出来,再慢慢的消失?
#10 [roywillow 12-11 22:25]
这个例子是Qt4 GUI编程那本上的吧
文本突变的时候确实挺难解决的
不妨用一个QStringList来存储要绘制的文本
然后计算一下一个屏幕现在能绘制多少条文本,然后取出这几条文本在一起绘制出来,绘制完一整条文本后就从QStringList中删掉这一条

<< 1 2 3 >> (2/3)

回复 发表
主题 版块