带歌词播放器
.版本 2
.支持库 wmp9
.程序集 窗口程序集1
.程序集变量 j, 播放器控制
.程序集变量 h, Value, , "0"
.程序集变量 ht, 文本型, , "0"
.程序集变量 y, 文本型, , "0"
.程序集变量 i
.程序集变量 tmp, 文本型
.程序集变量 tmp2, 文本型
.子程序 __启动窗口_创建完毕
tmp = 取临时文件名 ()
tmp2 = 取临时文件名 () ' 本源码来自三叶资源网(www.sanye.cx)
写到文件 (tmp2, 到字节集 (“5,此文件没有歌词”))
j = 播放器1.取控制 ()
.子程序 _时钟1_周期事件
.局部变量 tt, 双精度小数型
tt = 四舍五入 (j.当前位置, 1)
SetStr (tt)
.子程序 SetStr
.参数 Time, 双精度小数型
.局部变量 i2, 整数型
.计次循环首 (取数组下标 (h, ), i2)
.如果真 (h [i2].Time = Time)
标签1.标题 = h [i2].String
跳出循环 ()
.如果真结束
.计次循环尾 ()
.子程序 _播放器1_播放状态被改变
.参数 新的状态, 整数型
.判断开始 (新的状态 = 8 或 新的状态 = 2 或 新的状态 = 1)
时钟1.时钟周期 = 0
.判断 (新的状态 = 3)
时钟1.时钟周期 = 50
.默认
.判断结束
.子程序 _按钮1_被单击
.如果真 (通用对话框1.打开 ())
播放器1.地址 = 通用对话框1.文件名
ht = 分割文本 (到文本 (读入文件 (GetLRCLocation (通用对话框1.文件名))), #换行符, )
重定义数组 (h, 假, 取数组下标 (ht, ))
.计次循环首 (取数组下标 (ht, ), i)
y = 分割文本 (ht [i], “,”, 2)
重定义数组 (y, 真, 2)
h [i].Time = 到数值 (y [1])
h [i].String = y [2]
.计次循环尾 ()
.如果真结束
.子程序 GetLRCLocation, 文本型
.参数 File, 文本型
.局部变量 reh, 文本型
reh = 取文本左边 (File, 倒找文本 (File, “.”, , 假) - 1)
.如果真 (文件是否存在 (reh + “.olr”))
返回 (reh + “.olr”)
.如果真结束
.如果真 (文件是否存在 (reh + “.lrc”))
ConvertLRCToOLR (reh + “.lrc”, tmp, 0)
返回 (tmp)
.如果真结束
返回 (tmp2)
.子程序 __启动窗口_将被销毁
删除文件 (tmp)
删除文件 (tmp2)
易语言打开歌词