精易论坛

标题: 全制式影音播放器 [打印本页]

作者: 我就我    时间: 2021-11-30 23:38
标题: 全制式影音播放器
  
窗口程序集名保 留  保 留备 注
窗口程序集_启动窗口   
变量名类 型数组备 注
控制播放器控制  
全屏播放屏幕  
播放模式逻辑型  
自适应尺寸逻辑型  
点播播放状态逻辑型  
媒体播放器媒体  
日期文本型  
时间文本型  
设定播放器设定  
文本型  
文本型  
文本型  
文本型  
文本型  
文本型  
影音序号整数型  

子程序名返回值类型公开备 注
__启动窗口_创建完毕  
连续赋值 ( #绿色, 图片框1.背景颜色, 图片框2.背景颜色, 图片框3.背景颜色, 图片框4.背景颜色)
时钟4.时钟周期 = 300
控制 = 播放器1.取控制 ()
设定 = 播放器1.取设定 ()
子程序名返回值类型公开备 注
_歌曲目录_被单击  
变量名类 型静态数组备 注
路径文本型 
路径 = 浏览文件夹 (“请选择文件路径”, )
如果真 (路径 ≠ “”)
写配置项 (取运行目录 ()“\MusicServer.ini”, “System”, “NoClientPath”, 路径)
加入随机歌曲 ()
返回 ()
如果真 (点播列表.取标题 (1, 0)“”)
随机播放 ()
如果 (点播播放状态 = )
点播列表.现行选中项 = 0
播放器1.地址 = 点播列表.取标题 (点播列表.现行选中项, 2)
' 意思是播放器1.地址 =点播歌曲.所在路径,也就是歌曲所在的具体位置,0是点播列表.序号,1是歌曲目录,2是具体位置。
控制.播放 ()
状态条.置文本 (3, 点播列表.取标题 (0, 1))
' 意思就是状态条的设置项目第三项为点播列表的序号为第一项,列索引的第二项,也就是是歌曲名称。0是序号,1是歌曲名称。
随机播放 ()

子程序名返回值类型公开备 注
_播放按钮_被单击  
透明标签1.标题 = 播放器1.地址 + “.”“李京军”
如果 (播放按钮.标题 = “播放”)
控制.播放 ()
播放按钮.标题 = “暂停”
播放按钮.标题 = “播放”
控制.暂停 ()

子程序名返回值类型公开备 注
_停止按钮_被单击  
如果真 (停止按钮.标题 = “停止”)
控制.停止 ()
播放按钮.标题 = “播放”
单曲循环.标题 = “停止”
列表循环.标题 = “停止”

子程序名返回值类型公开备 注
_全屏播放_被单击  
如果 (全屏播放.标题 = “全屏播放”)
播放器1.全屏模式 = 真
自适应尺寸 = 假
全屏播放.标题 = “自适应尺寸”
全屏播放.标题 = “全屏播放”
播放器1.全屏模式 = 假
自适应尺寸 = 真

子程序名返回值类型公开备 注
_上一曲_被单击  
点播列表.现行选中项 = 点播列表.现行选中项 - 1
_播放按钮_被单击 ()
子程序名返回值类型公开备 注
_单曲循环_被单击  
变量名类 型静态数组备 注
d整数型 
已停止整数型 
如果 (单曲循环.标题 = “单曲循环”)
单曲循环.标题 = “停止”
控制.停止 ()
单曲循环.标题 = “停止”
单曲循环.标题 = “单曲循环”
d = 500
计次循环首 (d, )
控制.播放 ()
已停止 = 播放器1.播放状态
延迟 (3000)
如果真 (单曲循环.标题 = “停止”)
跳出循环 ()

计次循环尾 ()

子程序名返回值类型公开备 注
加入随机歌曲  
变量名类 型静态数组备 注
文件信息文本型 
目录信息文本型 
路径信息文本型 
读目录文本型 
表项索引整数型 
随机路径文本型 
歌曲名称文本型 
排列序号整数型 
随机路径 = 读配置项 (取运行目录 ()“\MusicServer.ini”, “System”, “NoClientPath”, )
' MusicServer是音乐服务器,System是进程文件,进程名的意思,NoClientPath是无需客户Duan路径
' 读配置项 (取运行目录 (), , , )
点播列表.全部删除 ()
如果真 (取文本右边 (随机路径, 1)“\”)
随机路径 = 随机路径 + “\”
调试输出 (随机路径 + “\”)
' *.mp3,*.rmvb,*.mkv,*.mp4,*.ami,*.wmv
文件信息 = 寻找文件 (随机路径 + “*.mid”, )
判断循环首 (文件信息 ≠ “”)
路径信息 = 路径信息 + 随机路径 + 文件信息 + #换行符
文件信息 = 寻找文件 (, )
判断循环尾 ()
文件信息 = 寻找文件 (随机路径 + “*.mp3”, )
判断循环首 (文件信息 ≠ “”)
路径信息 = 路径信息 + 随机路径 + 文件信息 + #换行符
文件信息 = 寻找文件 (, )
判断循环尾 ()
文件信息 = 寻找文件 (随机路径 + “*.rmvb”, )
判断循环首 (文件信息 ≠ “”)
路径信息 = 路径信息 + 随机路径 + 文件信息 + #换行符
文件信息 = 寻找文件 (, )
判断循环尾 ()
文件信息 = 寻找文件 (随机路径 + “*.mkv”, )
判断循环首 (文件信息 ≠ “”)
路径信息 = 路径信息 + 随机路径 + 文件信息 + #换行符
文件信息 = 寻找文件 (, )
判断循环尾 ()
文件信息 = 寻找文件 (随机路径 + “*.mp4”, )
判断循环首 (文件信息 ≠ “”)
路径信息 = 路径信息 + 随机路径 + 文件信息 + #换行符
文件信息 = 寻找文件 (, )
判断循环尾 ()
判断循环首 (文件信息 ≠ “”)
路径信息 = 路径信息 + 随机路径 + 文件信息 + #换行符
文件信息 = 寻找文件 (, )
判断循环尾 ()
文件信息 = 寻找文件 (随机路径 + “*.AVI                                                                                                                                                                                                                                                                                                                              ”, )
判断循环首 (文件信息 ≠ “”)
路径信息 = 路径信息 + 随机路径 + 文件信息 + #换行符
文件信息 = 寻找文件 (, )
判断循环尾 ()
文件信息 = 寻找文件 (随机路径 + “*.wmv”, )
判断循环首 (文件信息 ≠ “”)
路径信息 = 路径信息 + 随机路径 + 文件信息 + #换行符
文件信息 = 寻找文件 (, )
判断循环尾 ()
文件信息 = 寻找文件 (随机路径 + “*.ami”, )
判断循环首 (文件信息 ≠ “”)
路径信息 = 路径信息 + 随机路径 + 文件信息 + #换行符
文件信息 = 寻找文件 (, )
判断循环尾 ()
如果真 (路径信息 = “”)
返回 ()
判断循环首 (寻找文本 (路径信息, #换行符, , ) ≠ -1)
读目录 = 读一段 (路径信息, #换行符 )
路径信息 = 删一段 (路径信息, #换行符 )
表项索引 = 点播列表.插入表项 (, “随机播放”, , , , )
' 点播列表.置图片 (表项索引, 0, 2)
' 点播列表.置图片 (表项索引, 1, 1)
排列序号 = 排列序号 + 1
' 歌曲名称 = 到文本 (排列序号) + “、” + 取文本右边 (读目录, 取文本长度 (读目录) - 倒找文本 (读目录, “\”, , ))
歌曲名称 = 到文本 (排列序号)“、”取文本左边 (取文本右边 (读目录, 取文本长度 (读目录)倒找文本 (读目录, “\”, , )), 寻找文本 (取文本右边 (读目录, 取文本长度 (读目录)倒找文本 (读目录, “\”, , )), “.”, , ) - 1)
点播列表.置标题 (表项索引, 0, 到文本 (排列序号))
点播列表.置标题 (表项索引, 1, 歌曲名称)
点播列表.置标题 (表项索引, 2, 读目录)
判断循环尾 ()
点播列表.现行选中项 = 到整数 (标签3.标题)
数量标签.标题 = “共”到文本 (影音序号)“首”
数量标签.标题 = “共”到文本 (排列序号)“首”
数量标签.标题 = “共”到文本 (点播列表.取表项数 ()) + “首/第” + 标签3.标题 + “首”
' 随机播放 ()
子程序名返回值类型公开备 注
读一段文本型 歌曲点播
参数名类 型参考可空数组备 注
原内容文本型原内容
分割符文本型可以是#换行符,也可以是别的符号比如"/"","";"等
变量名类 型静态数组备 注
a整数型 
b文本型 
a = 寻找文本 (原内容, 分割符, , )
b = 取文本左边 (原内容, a - 1)
返回 (b)
子程序名返回值类型公开备 注
删一段文本型 歌曲点播
参数名类 型参考可空数组备 注
原内容文本型原内容
分割符文本型可以是#换行符,也可以是别的符号比如"/"","";"等
变量名类 型静态数组备 注
a整数型 
c文本型 
b文本型 
a = 寻找文本 (原内容, 分割符, , )
b = 取文本左边 (原内容, a - 1)
c = 取文本右边 (原内容, 取文本长度 (原内容)取文本长度 (b)取文本长度 (分割符))
返回 (c)
子程序名返回值类型公开备 注
_点播列表_当前表项被改变  
如果真 (点播播放状态 = )
播放器1.地址 = 点播列表.取标题 (点播列表.现行选中项, 2)
' 播放器.地址 = 系统设置.随机播放路径.内容 + “\” + 取文本右边 (点播列表.取标题 (点播列表.现行选中项, 1), 取文本长度 (点播列表.取标题 (点播列表.现行选中项, 1)) - 寻找文本 (点播列表.取标题 (点播列表.现行选中项, 1), “.”, , ))
编辑框1.内容 = 播放器1.地址  ' 取文本右边 (点播列表.取标题 (点播列表.现行选中项, 1), 取文本长度 (点播列表.取标题 (点播列表.现行选中项, 1)) - 寻找文本 (点播列表.取标题 (点播列表.现行选中项, 1), “.”, , ))
控制.播放 ()
标签3.标题 = 到文本 (点播列表.现行选中项 + 1)
数量标签.标题 = “共”到文本 (点播列表.取表项数 ()) + “首/第”到文本 (点播列表.现行选中项 + 1)“首”
状态条.置文本 (3, 点播列表.取标题 (点播列表.现行选中项, 1))
状态条.置文本 (5, 到文本 (取现行时间 ()))

子程序名返回值类型公开备 注
随机播放 歌曲点播
变量名类 型静态数组备 注
随机数字整数型 
如果 (点播列表.取标题 (0, 2)“”)
计次循环首 (取秒 (取现行时间 ()), )
' 随机数字 = 取随机数 (2, 点播列表.取表项数 ()) - 1
随机数字 = 点播列表.现行选中项 + 1
计次循环尾 ()
点播列表.现行选中项 = 随机数字
数量标签.标题 = “共”到文本 (点播列表.取表项数 ()) + “首/第”到文本 (随机数字 + 1)“首”
点播列表.保证显示 (随机数字)
播放器1.地址 = 点播列表.取标题 (随机数字, 2)
' 播放器.地址 = 系统设置.随机播放路径.内容 + “\” + 取文本右边 (点播列表.取标题 (随机数字, 1), 取文本长度 (点播列表.取标题 (随机数字, 1)) - 取文本长度 (取文本左边 (寻找文本 (点播列表.取标题 (随机数字, 1), “.”, , ), 1)))
编辑框1.内容 = 播放器1.地址
控制.播放 ()
状态条.置文本 (0, 到文本 (随机数字))  ' 序号
状态条.置文本 (1, 到文本 (点播列表.取表项数 ()))  ' 总影音
状态条.置文本 (2, “第”到文本 (随机数字 + 1)“首”)  ' 目前播放
状态条.置文本 (3, 点播列表.取标题 (随机数字, 1))  ' 影音名称
状态条.置文本 (4, 点播列表.取标题 (随机数字, 1))  ' 时长
状态条.置文本 (5, 点播列表.取标题 (随机数字, 1))  ' 速率
状态条.置文本 (6, 点播列表.取标题 (随机数字, 1))  ' 日期
加入随机歌曲 ()

子程序名返回值类型公开备 注
_播放器1_打开状态被改变  
参数名类 型参考可空数组备 注
新状态整数型
变量名类 型静态数组备 注
临时媒体播放器媒体 
如果 (新状态 = #打开状态 .媒体被打开)
临时媒体 = 播放器1.取当前媒体 ()
播放进度条.最大位置 = 四舍五入 (到整数 (临时媒体.取项目信息 (“Duration”)), )
播放按钮.标题 = “暂停”  ' 刚才这个忘了改
返回 ()

子程序名返回值类型公开备 注
_播放器1_播放状态被改变  
参数名类 型参考可空数组备 注
新的状态整数型
如果真 (新的状态 = #播放状态 .播放结束)
播放按钮.标题 = “播放”
时钟3.时钟周期 = 1000

子程序名返回值类型公开备 注
_播放器_错误发生  
如果真 (播放器1.播放状态 = 9)
播放按钮.标题 = “播放”
时钟3.时钟周期 = 1000

子程序名返回值类型公开备 注
取星期文本型 
变量名类 型静态数组备 注
星期整数型 
星期 = 取星期几 (取现行时间 ())
判断 (星期 = 1)
返回 (“星期日”)
返回 (“星期”数值到大写 (星期 - 1, ))

子程序名返回值类型公开备 注
_时钟1_周期事件  
' 取日期时间
年 = 到文本 (取时间部分 (取现行时间 (), #年份 ))
月 = 到文本 (取时间部分 (取现行时间 (), #月份 ))
日 = 到文本 (取时间部分 (取现行时间 (), #日 ))
时 = 到文本 (取时间部分 (取现行时间 (), #小时 ))
分 = 到文本 (取时间部分 (取现行时间 (), #分钟 ))
秒 = 到文本 (取时间部分 (取现行时间 (), #秒 ))
如果真 (取文本长度 () = 1)
月 = “0” + 月
如果真 (取文本长度 () = 1)
日 = “0” + 日
如果真 (取文本长度 () = 1)
时 = “0” + 时
如果真 (取文本长度 () = 1)
分 = “0” + 分
如果真 (取文本长度 () = 1)
秒 = “0” + 秒
日期 = 月 + “月” + 日 + “日”
时间 = 时 + “:” + 分 + “:” + 秒
如果真 (播放器1.播放状态 = 1 播放器1.播放状态 = 10)
状态条.置文本 (4, “00:00|00:00”)
播放进度条.位置 = 0
如果 (播放器1.播放状态 = 3)
播放进度条.位置 = 四舍五入 (到整数 (控制.当前位置), 0)
媒体 = 播放器1.取当前媒体 ()
如果 (控制.当前位置文本 ≠ “” 媒体.播放位置文本 ≠ “”)
状态条.置文本 (4, 控制.当前位置文本 + “|” + 媒体.播放位置文本)
状态条.置文本 (4, “00:00”“|”“00:00”)
状态条.置文本 (0, “序号 ”到文本 (点播列表.现行选中项 + 1))  ' 序号
状态条.置文本 (1, “总共 ”到文本 (点播列表.取表项数 ()) + “首”)  ' 总影音
状态条.置文本 (2, “第”到文本 (点播列表.现行选中项 + 1)“首”)  ' 目前播放
状态条.置文本 (3, 点播列表.取标题 (点播列表.现行选中项, 1))  ' 影音名称
状态条.置文本 (5, 到文本 (四舍五入 (到整数 (媒体.取项目信息 (“Bitrate”)) ÷ 1000, 0)) + “Kbps”)
状态条.置文本 (5, 播放器1.状态)
状态条.置文本 (6, “ ”到文本 (取日期 (取现行时间 ()))“  ” + 时间 + “ ”取星期 ())
子程序名返回值类型公开备 注
_下一曲_被单击  
点播列表.现行选中项 = 点播列表.现行选中项 + 1
_播放按钮_被单击 ()
子程序名返回值类型公开备 注
_关闭_被单击  
结束 ()
子程序名返回值类型公开备 注
_透明标签1_鼠标左键被按下逻辑型 
参数名类 型参考可空数组备 注
横向位置整数型
纵向位置整数型
功能键状态整数型
_启动窗口.发送信息 (161, 2, 0)


i支持库列表   支持库注释   
wmp9Windows媒体播放器
EdirectXDirectX支持库
shell操作系统界面功能支持库
iext扩展界面支持库一
iext2扩展界面支持库二
spec特殊功能支持库
iext6扩展界面支持库六


“如果不能播放视频的话,自行下载完美解码并把播放器复制到易语言安装根目录里,我的是自带的xp播放器损坏了才不得不用完美解码 ”

作者: yq1431    时间: 2021-12-1 00:37
如果不能播放视频的话,自行下载完美解码并把播放器复制到易语言安装根目录里
作者: yuyang508    时间: 2021-12-1 01:39
        支持开源~!感谢分享
作者: plt1111    时间: 2021-12-1 01:45
支持开源~!感谢分享
作者: 我就我    时间: 2021-12-1 03:56
plt1111 发表于 2021-12-1 01:45
支持开源~!感谢分享


作者: futiem    时间: 2021-12-1 07:02
完美解码并把播放器复制到易语言安装根目录
作者: huxian    时间: 2021-12-1 08:33
这个是啥意思?
作者: xjshuaishuai    时间: 2021-12-1 08:37
谢谢分享!
作者: wuqingg    时间: 2021-12-1 08:53
啥?????????????
作者: zhaozicheng168    时间: 2021-12-1 12:57
辛苦了,谢谢
作者: wjswzj0    时间: 2021-12-1 13:56
谢谢分享
作者: 我就我    时间: 2021-12-1 16:42
wjswzj0 发表于 2021-12-1 13:56
谢谢分享


作者: leige0921    时间: 2021-12-1 19:28
66666666666666666666666666
作者: hqxgz    时间: 2021-12-2 00:34
支持支持在c在
作者: BIG牛肉面    时间: 2021-12-2 03:33
谢谢分享来看看
作者: 我就我    时间: 2021-12-2 05:51
BIG牛肉面 发表于 2021-12-2 03:33
谢谢分享来看看


作者: Hdfws858    时间: 2021-12-2 21:09
谢谢分享
作者: 我就我    时间: 2021-12-3 02:59
Hdfws858 发表于 2021-12-2 21:09
谢谢分享

共同学习
作者: lq850815    时间: 2021-12-3 15:45
大家一起交流学习!
作者: 我就我    时间: 2021-12-4 01:49
lq850815 发表于 2021-12-3 15:45
大家一起交流学习!

一起学习
作者: 2446789312    时间: 2021-12-5 19:48
就这???????????
作者: 电速极光    时间: 2021-12-15 15:21
2021年还在用XP的可不多见啊。
作者: 我就我    时间: 2021-12-16 05:08
电速极光 发表于 2021-12-15 15:21
2021年还在用XP的可不多见啊。

没钱,买不起新电脑,暂时让八九年的电脑老骥伏枥吧!
作者: 我就我    时间: 2021-12-16 05:08
hqxgz 发表于 2021-12-2 00:34
支持支持在c在

谢谢支持
作者: jiang7825    时间: 2021-12-21 01:12

作者: zwy9707    时间: 2021-12-21 12:21


谢谢分享!
作者: 我就我    时间: 2021-12-22 06:48
zwy9707 发表于 2021-12-21 12:21
谢谢分享!


作者: 趣冉科技    时间: 2022-1-4 21:18
感谢楼主分享,支持一下~~!!!
作者: junhai    时间: 2022-1-12 10:05
谢谢!!!!!!!!!
作者: ghost12    时间: 2022-1-25 20:00
我读书少,不要骗我
作者: laojikiss200    时间: 2022-1-29 09:29
先看看·············
作者: 我就我    时间: 2022-1-31 06:21
ghost12 发表于 2022-1-25 20:00
我读书少,不要骗我


作者: wuxiaotong    时间: 2022-3-2 21:41
66666666666666666666666
作者: mm1922    时间: 2025-4-30 15:30
buco  gjxxffxiang




欢迎光临 精易论坛 (https://125.confly.eu.org/) Powered by Discuz! X3.4