• 5933阅读
  • 2回复

如何做到歌词同步显示(行同步) [复制链接]

上一主题 下一主题
离线afeixiao
 

只看楼主 倒序阅读 楼主  发表于: 2010-02-20
歌词文件的解析和时间的控制应该没什么问题,只是如何实现如芊芊静听的歌词效果<对应行高亮>。我初步想法是使用scroll实现滚动,但高亮行的显示却没有什么思路,怎样控制对应行的高亮呢??各位是否有好的建议呢,谢谢了。。。。。。。。

效果:

离线kinzess

只看该作者 1楼 发表于: 2010-02-21
直接改变字体颜色行吗?
不知道能不能支持特定行颜色不同?我没试过..不好意思..
理论上应该可行的
我记得lrc文件对应行都有一个时间的,那知道了时间再控制一下那行应该不难的把?
离线muma
只看该作者 2楼 发表于: 2010-02-22
楼主有兴趣的话,可以看看这个
http://www.sanfanling.cn/svn/lrcShow-X/trunk/lrcShow-X/mainGuiQt4.py

高亮其实很简单,甚至不用paintEvent,可以将显示的歌词放置在继承自qtextbrowser的widget中,用调色板定义背景色、字体色、高亮色、高亮背景色,注意需要将高亮背景色与背景色一致。

这样的话,直接move cursor实现选中,就可以实现高亮效果。当然,如果要实现淡入淡出,就没这么容易了。

快速回复
限100 字节
 
上一个 下一个