易语言制作一个mp3播放器,如何让MP3播放的进度与进度条同步? 20
.版本 2
.支持库 shell
.程序集 窗口程序集1
.程序集变量 文件号, 整数型
.程序集变量 mp3, 文本型, , "0"
.程序集变量 文件目录, 文本型
.程序集变量 选项, 文本型
.子程序 __启动窗口_创建完毕
.局部变量 文件名, 文本型
组合框1.加入项目 (“请选歌曲”, )
按钮2.标题 = “播放”
选项 = “重复”
文件目录 = 浏览文件夹 (“请选择MP3目录:”, 假)
.如果真 (文件目录 = “”)
文件目录 = 取运行目录 ()
.如果真结束
文件目录 = 文件目录 + “\”
文件名 = 寻找文件 (文件目录 + “*.mp3”, )
.循环判断首 ()
组合框1.加入项目 (取文本左边 (文件名, 取文本长度 (文件名) - 4), )
加入成员 (mp3, 文件名)
文件名 = 寻找文件 (, )
.循环判断尾 (文件名 ≠ “”)
置随机数种子 ()
组合框1.现行选中项 = 0
_按钮1_被单击 ()
.子程序 _按钮1_被单击
.如果真 (按钮2.标题 = “继续”)
按钮2.标题 = “播放”
按钮1.标题 = 选项
停止播放 ()
组合框1.现行选中项 = 0
.如果真结束
.如果真 (选项 = “重复”)
按钮1.标题 = “重复”
选项 = “随机”
返回 ()
.如果真结束
.如果 (选项 = “随机”)
按钮1.标题 = “随机”
选项 = “顺序”
.否则
按钮1.标题 = “顺序”
选项 = “重复”
.如果结束
返回 ()
.子程序 _按钮2_被单击
.如果真 (取MP3播放状态 () = 1)
暂停播放MP3 ()
按钮2.标题 = “继续”
选项 = 按钮1.标题
按钮1.标题 = “停止”
返回 ()
.如果真结束
.如果 (取MP3播放状态 () = 0)
.如果真 (组合框1.现行选中项 = 0)
文件号 = 1
.如果真结束
播放 ()
.否则
继续播放MP3 ()
按钮1.标题 = 选项
.如果结束
按钮2.标题 = “暂停”
返回 ()
.子程序 _组合框1_列表项被选择
文件号 = 组合框1.现行选中项
按钮2.标题 = “暂停”
播放 ()
.子程序 播放
组合框1.现行选中项 = 文件号
同步播放MP3 (文件目录 + mp3 [文件号], , 标签1, )
.子程序 _标签1_反馈事件, 整数型
.参数 参数一, 整数型
.参数 参数二, 整数型
进度条1.位置 = 参数一
.如果真 (参数一 = 100)
.如果真 (按钮1.标题 = “随机”)
文件号 = 取随机数 (1, 取数组成员数 (mp3))
.如果真结束
.如果真 (按钮1.标题 = “顺序”)
.如果 (文件号 < 取数组成员数 (mp3))
文件号 = 文件号 + 1
.否则
文件号 = 1
.如果结束
.如果真结束
播放 ()
.如果真结束