定时器应用之一-背景音乐的连续播放在运行
小精灵的时候,我想播放一些背景音乐,而且是几首不同的背景音乐连续播放(当然,也可以是要执行几个不同的其它的代码指令,譬如在运行小精灵时还想刷网页等等),于是就写下了如下的代码。定义
时间还是精确到毫秒,不过还是看自己的应用了。这样就可以欣赏不同的背景音乐。
这里我只是用来播放背景音乐,借以抛砖引玉,应用到其他的地方。
代码如下
UserVar YYBF=1 "//定义要播放背景音乐时等于1" If YYBF=1 //如果要播放背景音乐 Call BJYY //则执行子程序 End If //否则条件结束 //-----------------------你的代码指令 //在你的代码指令里加入下面的语句 If YYBF=1 Call FanYinYue End If //-----------------------你的代码指令 //在频繁用到的代码里加入下面的语句 If YYBF=1 Call FanYinYue End If //-----------------------你的代码指令 //下面为子程序 Sub BJYY Ksyy = Plugin.Sys.GetTime() //获得现在系统的原始时间 yy=yy+1 //这里有8首背景音乐 If yy=1 //第一首背景音乐 Call Plugin.Media.Play(".\plugin\M2M.wma") //音乐名及地址 Bfsj=280 //定义这首背景音乐的长度 End If If yy=2 //第二首背景音乐 Call Plugin.Media.Play(".\plugin\Don't Say You Love Me .wma") //音乐名及地址 Bfsj=230 //定义这首背景音乐的长度 End If If yy=3 //第三首背景音乐 Call Plugin.Media.Play(".\plugin\Everything you do.wma") //音乐名及地址 Bfsj=245 //定义这首背景音乐的长度 End If If yy=4 Call Plugin.Media.Play(".\plugin\Girl in your dreams.wma") Bfsj=230 End If If yy=5 Call Plugin.Media.Play(".\plugin\Our song.wma") Bfsj=240 End If If yy=6 Call Plugin.Media.Play(".\plugin\THE DAY YOU WENT AWAY.wma") Bfsj=230 End If If yy=7 Call Plugin.Media.Play(".\plugin\郭采洁-笨的可以.wma") Bfsj=275 End If If yy=8 Call Plugin.Media.Play(".\plugin\林妙可-妙妙妙.wma") Bfsj=220 End If End Sub Sub FanYinYue hyy = Plugin.Sys.GetTime() //获得系统运行的现在时间 xyq=((hyy-Ksyy)/1000) //计算系统现在时间与系统原始时间之时间差 If Bfsj<xyq //如果时间差大于背景音乐的播放时间长度 Call BJYY //则调用子程序来检测下首背景音乐的播放时间长度 End If End Sub |
如果你想把时间定时精确点,就多调用
If YYBF=1
Call FanYinYue
End If
这语句,即调用的时候越多,则时间月精确。
但有点要注意,调用的时间间隔不能超过定义的定时时间,最好是定义的定时时间的1/10时间。当然是越频繁越好就时间越精确。
音乐也可以改成自己喜欢的音乐,不过要注意背景音乐的地址和格式名,否则会找不到背景音乐。