制作电影播放器
第十三讲 电影播放器制作实例
教学目标
, 设计打开文件对话框
, 使用电影播放控制函数
, 控制播放速度
, 使用运动图标显示播放进度
1 程序功能
制作可以播放Director、MPEG、FLC/FLI等格式的电影播放器。 2 主要操作步骤
, 拖动一个框架图标到流程线上
, 拖动一个群组图标到框架图标右侧,名为“播放电影”
, 双击打开群组图标,在二级流程线上拖入一个数字电影图标,
名为“电影”
, 双击数字电影图标,打开属性设置窗口,单击Import按钮引入
一个数字电影文件,然后选择Positioning为On Screen,
Movable为On Screen
, 双击框架图标,打开流程窗口,删除所有图标
, 在框架图标的流程窗口中拖入一个交互图标
, 拖动一个导航图标到交互图标右侧,选择Button类型
双击响应类型符号,打开属性设置窗口,使Perpetual有效,
设置Erase为Don’t Erase,Branch为Return
1
, 双击导航图标,打开属性设置窗口,从列
框中选择图标“播
放电影”
, 拖动一个导航图标到交互图标最右侧,双击导航图标,打开属
性设置窗口,从列表框中选择图标“播放电影”
, 拖动一个计算图标到交互图标最右侧,名为“暂停”
, 拖动一个计算图标到交互图标最右侧,名为“退出”双击打开
计算图标,在窗口中输入:Quit(0)
, 选择[Window]/[Functions]命令,打开对话框,从Category
中选择当前文件,单击Load按钮,出现对话框,要求选择需装
载的UCD函数,选择FILEDLGS.U32,单击“打开”按钮,出现
用户自定义函数对话框,列出了FILEDLGS.U32文件中包含的自
定义函数,选择函数OpenFileDlg,然后单击Load按钮
, 单击导航图标“打开”,选择[Modify]/[Icon]/[Calculation]
命令,输入如下内容:
Myfilename="All availble
files|*.avi;*.mov;*.mpg;*.dir;*.dxr;*.fli;*.flc|"
Myfilename=Myfilename^"Video for Windows|*.avi|Quick
Time Movie|*.mov|"
Myfilename=Myfilename^"MPEG
Files|*.mpg|Director|*.dir;*.dxr|"
Myfilename=Myfilename^"FLC/FLI|*.flc;*.fli|"
Myfilename=OpenFileDlg("打开文件
2
","","","",Myfilename) ——OpenFileDlg(dlgtitle, defname, defpath, defext,
filters)
——dlgtitle是对话框的标题,defname为缺省的文件名 ——defpath为缺省的文件路径,defext为缺省的文件扩展名,filters为过滤条件
if Myfilename<>"" then
ImportMedia(IconID@"电影",Myfilename)
——ImportMedia函数用于将媒体文件引入指定的图标中 end if
, 双击计算图标“暂停”,在窗口中输入以下内容: MediaPause(IconID@"电影",pause)
——当pause为真时,暂停播放指定图标内容,否则从断点处继续播放
pause=~pause ——实现暂停与播放交替进行 , 拖动一个显示图标到框架图标上方,名为“底图” 双击打开显示图标,使用[File]/[Import]命令引入图片文件,并调整位置
, 拖动一个显示图标到“底图”下方,名为“速度滑块”,引入图片文件
使用[Modify]/[Icon]/[Properties]命令,在属性窗口中选择Positioning和Movable为On Path,并拖动滑块产生路径
3
, 双击数字电影图标,在属性窗口中设置Rate为PathPosition@”
速度滑块”
, 双击显示图标“底图”,在窗口中输入:{PathPosition@”速
度滑块”}fps
使用[Modify]/[Icon]/[Properties]命令,选中Update
Displayed Variables
, 双击显示图标“底图”,在窗口中将图形复制,并列在下方 , 拖动一个显示图标到“速度滑块”下方,名为“进度滑块”,
引入图片文件
, 拖动一个运动图标到“电影”下方,名为“跟踪进度” , 在运动图标的属性窗口中,选择Type为Path to Point,
Concurrency为Perpetual,设置Time为0,并拖动进度滑块
产生路径,设置Destination为MediaPosition@”电影”, End
为MediaLength@”电影”
4