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