多语言展示
当前在线:481今日阅读:176今日分享:34

学会用按键精灵制作脚本:制作音乐播放器

配上炫酷的Gif图片,简单的音乐播放器就算完成了。楼主忍不住陶醉许久,QUI界面原来也是可以如此美腻的,哦吼吼~~
工具/原料

按键精灵2014

方法/步骤
1

最终效果图:

2

我们肉眼看到的,这个播放器上只有按钮,进度条,列表框,标签,其实还有一个浏览框和按钮是隐藏的。

3

我们先来了解下,listbox列表控件、BrowseBox1浏览框控件、ProgressBar1进度条控件。上表格~今天会用到的属性会用红色字体标注出来。ListBox 列表框●基本●位置:●其他: ●方法:属性1,名称(Name)属性1,左边(Left)属性1,文字颜色(TextColor)方法1,返回列表行数数量(ListCount)属性2,显示(Visible) 属性2,上边(Top)属性2,背景颜色(BackColor)方法2,新增列表项目(AddItem)属性3,有效(Enabled)属性3,宽度(Width) 属性3,字体(Font)方法3,插入列表项目(InsertItem)属性4,列表内容(List)属性4,高度(Height) 方法4,删除列表项目(RemoveItem)属性5,显示顺序(ZOrder)方法5,返回列表当前选中的行号(ListIndex)

4

BrowseBox 浏览框●基本:●位置:●其他:属性1,名称(Name)属性1,左边(Left)属性1,文字颜色(TextColor)属性2,显示(Visible)属性2,上边(Top)属性2,背景颜色(BackColor)属性3,有效(Enabled)属性3,宽度(Width)属性3,字体(Font)属性4,路径(Path)属性4,高度(Height)属性4,浏览样式(Style)属性5,显示顺序(ZOrder)属性5,过滤条件(Filter)

5

ProgressBar 进度条●基本:●位置:其他:属性1,名称(Name)属性1,左边(Left) 属性1,方向(Orientation) 属性2,显示(Visible) 属性2,上边(Top)隐藏属性:进度(Value)属性3,有效(Enabled) 属性3,宽度(Width)属性4,高度(Height) 属性5,显示顺序(ZOrder)

6

音乐播放器的实现步骤是十分简单的,来,咱们手牵手一起去看看是怎么实现的。步骤:  把浏览框里的路径进行分割,把分割得到的歌曲名称添加到播放列表框。

7

代码:If Form1.浏览框.Path <> '' Then   //判断打开的路径是否为空        SearchString = Form1.浏览框.Path  //设置要搜索的字符串        SearchChar = '\'  //搜索\        MyPos = InstrRev(SearchString, SearchChar)  //搜索字符'\'在SearchString里面出现的从结尾计起的位置        l = Len(SearchString)  //SearchString的长度        歌曲名字 = Right(SearchString, l - MyPos)  //从字符串SearchString右边返回指定数目的字符,现在返回爱你一万年.mp3        Form1.播放列表.AddItem 歌曲名字  //添加歌曲名字到列表框End If

8

1、 播放按钮的默认背景图片设置为播放.jpg 定义一个全局变量来记录播放按钮的点击次数,点击次数为奇数时,播放按钮的背景图片设置为暂停.jpg ,并且播放音乐,点击次数为偶数时,播放按钮的背景图片设置为播放.jpg,并且暂停音乐。

9

If js mod 2   Then         Form1.播放.Picture='.\播放.jpg'        Call Plugin.Media.Stop()        Form1.显示播放状态.Caption = '停止'    Else         Form1.播放.Picture = '.\暂停.jpg'        Call Plugin.Media.Play(myarray(hanghao))  //播放列表文件,使用相对路径        Form1.显示播放状态.Caption = '播放'    End Ifjs = js + 1

10

上一首按钮(下一首按钮) 2014-9-22 15:01 上传下载附件 (1.66 KB) 先停止当前播放的音乐,将播放列表框的listIndex (列表当前选中的行号)加一(下一首是减一),然后播放音乐。

11

代码:If Form1.播放列表.listIndex = 0 Then        //如果播放到最前一首,弹出提示框        MessageBox'已经是最前一首!'    Else        //首先停止上一首         Call Plugin.Media.Stop()        Delay 100        Form1.播放.Picture = '.\暂停.jpg'        Call Plugin.Media.Play(myarray(hanghao - 1))        hanghao = hanghao - 1        Form1.播放列表.listIndex = Form1.播放列表.listIndex - 1End If

12

音量添加按钮(音量减少按钮),每点击一次,声量控制进度条的值就增加10%,设置播放器的音量为当前进度条的值。

13

代码:Form1.声量进度条.Value = Form1.声量进度条.Value + 100/10  //进度条显示每次增加10%音量Call Plugin.Media.Vol(Form1.声量进度条.Value)  //音量控制

14

控件背景颜色、字体调整等,这些视觉调整比较耗费时间,大家可以根据自己的喜好设置属于自己风格的界面。

15

整个音乐播放器代码如下:Public js// 定义一个全局变量,用来记录播放按钮的点击次数,奇数显示播放按钮图标,偶数显示暂停按钮图片//先写音量控制Event Form1.音量增加.Click    Form1.声量进度条.Value = Form1.声量进度条.Value + 100/10  //进度条显示每次增加10%音量    Call Plugin.Media.Vol(Form1.声量进度条.Value)  //音量控制End EventEvent Form1.音量减少.Click    Form1.声量进度条.Value = Form1.声量进度条.Value - 100/10  //进度条显示每次减少10%音量    Call Plugin.Media.Vol(Form1.声量进度条.Value)  //音量控制End Event//写添加歌曲 Event Form1.添加.Click    If Form1.浏览框.Path <> '' Then   //判断打开的路径是否为空        SearchString = Form1.浏览框.Path  //设置要搜索的字符串        SearchChar = '\'  //搜索\        MyPos = InstrRev(SearchString, SearchChar)  //搜索字符'\'在SearchString里面出现的从结尾计起的位置        l = Len(SearchString)  //SearchString的长度        歌曲名字 = Right(SearchString, l - MyPos)  //从字符串SearchString右边返回指定数目的字符,现在返回爱你一万年.mp3        Form1.播放列表.AddItem 歌曲名字  //添加歌曲名字到列表框    End If    Form1.声量进度条.Value = 20 //声量默认设置为20    Call Plugin.Media.Vol(Form1.声量进度条.Value)    Form1.播放列表.ListIndex = 歌曲名字// 设置播放列表里默认选中为当前添加的歌曲    Form1.浏览框.Visible = false    Form1.添加.Visible = false    Form1.Add.Visible = True    //隐藏添加歌曲的浏览框等,显示Add添加按钮End Event//**********功能键*********//播放列表选歌事件 Event Form1.播放列表.Click    //首先,读取播放列表内容     text = Form1.播放列表.list    myarray = split(text, '|')  //分割播放列表     hanghao = Form1.播放列表.listIndex  //读取行号    // MessageBox myarray(hanghao)  //显示该行歌曲名字End Event//播放Event Form1.播放.Click    text = Form1.播放列表.list    myarray = split(text, '|')  //分割播放列表     hanghao = Form1.播放列表.listIndex//读取行号    If js mod 2   Then         Form1.播放.Picture='.\播放.jpg'        Call Plugin.Media.Stop()        Form1.显示播放状态.Caption = '停止'    Else         Form1.播放.Picture = '.\暂停.jpg'        Call Plugin.Media.Play(myarray(hanghao))  //播放列表文件,使用相对路径        Form1.显示播放状态.Caption = '播放'    End If    js = js + 1End Event//停止//下一首Event Form1.下一首.Click    text = Form1.播放列表.list    myarray = split(text, '|')  //分割播放列表     hanghao = Form1.播放列表.listIndex  //读取行号    If Form1.播放列表.listIndex < Form1.播放列表.ListCount-1  Then  //当前选中歌曲行号小于播放列表总行号        //首先停止上一首         Call Plugin.Media.Stop()        Delay 100               Form1.播放.Picture = '.\暂停.jpg'        Call Plugin.Media.Play(myarray(hanghao + 1))        hanghao = hanghao + 1        Form1.播放列表.listIndex = Form1.播放列表.listIndex + 1    ElseIf Form1.播放列表.listIndex = Form1.播放列表.ListCount-1 Then        //如果播放到最后一首,弹出提示框        MessageBox '已经是最后一首!'    End IfEnd Event//上一首Event Form1.上一首.Click    text = Form1.播放列表.list    myarray = split(text, '|')  //分割播放列表     hanghao = Form1.播放列表.listIndex  //读取行号    If Form1.播放列表.listIndex = 0 Then        //如果播放到最前一首,弹出提示框        MessageBox'已经是最前一首!'    Else        //首先停止上一首         Call Plugin.Media.Stop()        Delay 100        Form1.播放.Picture = '.\暂停.jpg'        Call Plugin.Media.Play(myarray(hanghao - 1))        hanghao = hanghao - 1        Form1.播放列表.listIndex = Form1.播放列表.listIndex - 1    End IfEnd Event//清空列表 Event Form1.清空列表.Click    MsgBox '注意!是否要清空播放列表!', 48, '提示:'    Form1.播放列表.List = '' //清空End Event//**********功能键***********Event Form1.Add.Click     Form1.浏览框.Visible = True    Form1.添加.Visible = True    Form1.Add.Visible = false    // 显示添加歌曲的浏览框等,隐藏Add按钮End Event

推荐信息