flash影片剪辑控制方法
Flash 影片剪辑的简单控制
Flash 影片剪辑的简单控制在前三章的实例中,我们制作出来的实例在播放的过程中,总是重复不停的播放。
这些重复播放的影片能不能控制呢?如何控制呢?本章主要学习通过在按钮上写上相应的脚本(Action),达到控制影片剪辑的播放、停止、跳转到某一帧播放、跳转到某一帧停止、到时间轴下一帧停止、到时间轴的上一帧停止来实现对影片的以上六种控制。
Flash中的Action是由一个个命令组成,一个命令能实现一个目的。
因此我们首先要知道某个命令能做什么,在实际操作过程就是我们要实现一个效果,应该使用哪个命令。
知道选用哪个命令后,那么我们要确定把这个命令写在哪里,在ActionScript2.0中,Action能写在“按钮”、“影片剪辑”、“关键帧”上,本章主要介绍Action写在“按钮”与“关键帧”的方法。
选定书写Action的对象后,我们还要知道这个命令的书写格式,只有书写格式正确后,命令才能被Flash执行。
总结上的三方面的内容,我把学习Flash中Action的方法归纳为七个字:“能做什么?怎么做?”。
本章学习以下六种影片方法和八种按钮事件:表4.1.01 影片的六种方法:表4.1.02 按钮的八种事件:“放开(release)”事件,在按钮事件中还有以淡色显示的其余的六种事件,它们在使用方法上是一样的,只是功能上不一样,这里不举例说明,希望广大学友能举一反三。
同时,Action 控制的影片剪辑已经编辑好,并且存放在“光盘: \实例与视频\第四章\影片剪辑素材”文件夹中。
用于控制影片剪辑的按钮也已经编辑好,放置在“光盘: \实例与视频\第四章\按钮素材”文件夹中。
通过引用影片素材和按钮素材简化实例制作过程,侧重Action 应用。
第一节在相同时间轴下的控制4.1.1 小车运动实例预览:光盘: \实例与视频\第四章\第一节\小车运动实例.swf操作步骤:<1> 启动Flash CS3,打开“光盘: \实例与视频\第四章\影片剪辑素材\小车运动.fla”这个Flash源文件。
flash影片剪辑控制指令
影片剪辑控制指令学习目标:⏹掌握影片剪辑的实例的命名、属性及设置⏹掌握影片剪辑的复制和删除指令⏹掌握影片剪辑跟随鼠标跟随指令⏹给贺年片加上“雪花飘飘”的背景⏹给贺年片加上“跟随鼠标”的动态效果一、影片剪辑实例的命名将影片剪辑从库中拖到场景中即可获得一个该影片剪辑的实例,一个影片剪辑可生成多个实例,只有给每个实例分配唯一的名字后,才可以利用动作脚本对其进行控制。
二、影片剪辑的属性和设置使用动作脚本产生动画效果主要是通过设置影片剪辑的属性来实现。
以下是影片剪辑属性。
影片剪辑实例的属性设置可以用以下两种方法设置:点语法、指令语句。
点语法:点用来指示和对象或电影剪辑相关联的属性或方法。
也可以用来识别电影剪辑、变量、函数或对象的目标路径。
点语法表达式以对象或电影剪辑实例名开始后接点,以要指定的元素结束。
例如:_root.B._alpha=50指令语句:setProperty(“实例路径”,属性,值)其中:实例路径可以是绝对或相对路径,必须用双引号括起来作用:动作(过程)。
设置实例属性值例如:on(release){setProperty(“start”,_alpha,30);}等价于:on(release){start._alpha=30;}getProperty(实例路径,属性)作用:函数。
返回实例指定属性的值例如:XPOS=getProperty(_root.start,_x);等价于:XPOS=_root.start._x用点语法来读取和设置影片剪辑实例的属性比用命令方便,建议同学们尽量使用点语法。
三、影片剪辑的复制和删除在使用 Flash MX 制作动画时可能经常需要在场景中修改、添加或删除对象, Flash MX 中的 duplicateMovieClip 指令可以实现影片剪辑对象的复制功能,removeMovieClip 动作指令可以删除上述指令复制的影片剪辑实例。
D u p l i c a t e M o v i e C l i p指令格式:duplicateMovieClip(实例,新实例,层级数)或实例. DuplicateMovieClip(新实例,层级数)其中:层级数:该对象在场景的层数,当位置重叠时层级数大的实例将遮挡层级数小的。
电影剪辑的控制
on (release) {
gotoAndStop(3625);
}//3625表示电影剪辑的总帧数
gotoAndStop(_currentframe-20);
} else {
gotoAndStop(1);
}//20表示一次快退的帧数,可以根据实际修改
[快进]按钮:
on (release) {
gotoAndStop(_currentframe+20);
}
[尾帧]按钮:
电影剪辑的控制
在Flash中导入的电影剪辑还可以进行播放控制,如播放、暂停、快进、快退等。在导入电影剪辑的场景中再插入一新层,可取名为“控制层”,然后在该层的第1帧放置按钮若干(如图3),在电影剪辑结束帧的对应帧按F5键插入空白关键帧,下面我们从左往右依次为各个按钮加上Actions语句,以实现播放控制功能。
[首帧]按钮:
on (release) {
gotoAndStop(1);
}
[播放]按钮:
on (release) {
play();
}
[暂停]按钮:
on (release) {
stop();
}
[快退]按钮:
on (release) {
if (_currentframeቤተ መጻሕፍቲ ባይዱ20) {
Flash影片剪辑
Flash影片剪辑随着互联网的普及, Flash影片越来越多地被用于网页中,它可以为网页增添更加生动的效果,同时也可以用来制作动画和游戏。
而制作这些Flash影片,往往需要剪辑和编辑的技巧。
本文将介绍Flash影片剪辑的技巧,包括音频和视频的剪辑、转场效果的应用等。
一、剪辑音频首先,我们可以用Adobe Audition等专业的音频编辑软件制作好音频文件,然后将其导入Flash中进行剪辑。
在Flash中,我们可以打开时间轴,在时间轴中的某个位置右键点击“插入音频”,选择需要导入的音频文件即可。
然后我们可以使用时间轴上的媒体控制器,调整音频的开始时间、结束时间和音量大小。
此外,Flash中还可以利用音频剪辑效果器来为音频添加特效,如回声、混响等,让音频更加丰富多样。
二、剪辑视频和音频类似,我们可以先使用专业的视频编辑软件制作好视频文件,然后将其导入Flash中进行剪辑。
在Flash中,我们可以像音频剪辑一样,在时间轴中右键点击“插入视频”,选择需要导入的视频文件。
导入后,我们可以选择视频所在的图层,并将其拉伸、缩小或旋转,调整视频的大小和角度。
此外,我们还可以在时间轴上选定视频的某个时间段,右键点击“剪辑”,实现视频的剪辑和分段。
三、转场效果转场效果是指两个视频或音频之间切换时的效果。
在Flash 中,我们可以利用时间轴上的“补间动画”来添加转场效果。
具体来说,我们可以先将一段视频或音频剪辑好,在相应的时间轴上选定该段内容,并将其右键点击“补间”,选择需要的补间效果即可。
常见的补间效果有渐变、旋转、缩放、移动等,选择不同的效果可以使切换更加流畅自然。
在音频剪辑中,我们可以使用渐变的音量来实现补间效果,让两段音频在切换时过渡更加自然。
总之,Flash影片剪辑需要技巧和经验,其中涉及到音频和视频的剪辑、转场效果的应用等。
因此,在制作Flash影片时,我们应该熟练掌握Flash的时间轴和媒体控制器,同时也需要了解基本的音频和视频编辑技能,才能使Flash影片更加生动、精致。
Flash课件—影片剪辑
this: 当前影片剪辑
this.mc3(mc1mc3) this.mc4(mc2mc4)
_parent: 上一级影片剪辑
this._parent(mc3mc1) this._parent.parent.mc2(mc3mc2)
head_mc
_root robot_mov robot_mc
left_mc
right_mc
不用with的语句
利用with的语句
7.level 层级
• level:影片的层级,主时间轴level值为0,其余层级越高的加载的位 置越上层,依次为1,2,3等,且加载在上层的动画会覆盖下层的动画. 主时间轴: _root.mc1等价于 _level0.mc1 loadMovieNum(“mv2.swf”,1): 第2个参数表示level1.
9.getNextHighestDepth
• MovieClip.getNextHighestDepth() 获得下一个可用的深度索引,采用该深度值的对象将呈现在影片 剪辑中同一级和同一层上所有其它对象之上.返回的值为大于或 等于0的正数. d1=_root.mc2.getNextHighestDepth(); trace(d1); (输出结果为0,或大于0的正数)
• 若影片剪辑A_mc的帧标签为aa,B_mc的帧标签为bb,要使按钮 A_btn控制A_mc的播放,按钮B_btn控制B_mc的播放,
• 则按钮A_btn的动作为: 按钮B_btn的动作为:
on (press) {
on (press) {
gotoAndStop("aa"); gotoAndStop(“bb");
《Flash CS5案例教程》6.2影片剪辑的简单控制
知识要点
3.简单认识MovieClip 类和Event类
(1)MovieClip 类
知识要点
3.简单认识MovieClip 类和Event类
(2)Event类
实训案例
实训案例
技能目标
掌握程度
任务1:影片剪辑键盘事件 任务2:影片剪辑按钮事件
掌握用键盘控制影片剪辑缩放 与透明度
掌握用鼠标控制影片剪辑缩放 与透明度
学生动手完成案例
• 任务分解
任务 预备任务:实例命名 任务一:影片剪辑键盘事件 任务二:影片剪辑按钮事件
知识点
源文件 操作难度
巩固实例命名的方法
6.2.1.fla
用键盘控制影片剪辑移 动与旋转
用鼠标控制影片剪辑移 动与旋转
6.2.2.fla 飞机.fla
★ ★★ ★★★
知识要点
1.认识动作面板
知识要点
6.2 影片剪辑的简单控制
案例——飞机的控制
• 案例设计 本案例设计的是一个一直在天空水平匀速飞翔的飞机,
用户可以通过键盘的方向键或单击动画右下角的上下左右 箭头来改变飞机的位置,并控制其旋。 • 学习目标
了解ActionScript 3.0中的变量、实例与实例名、属性、 函数与方法、事件与事件侦听器、类、等主要元素;掌握 运用键盘事件和按钮事件来控制影片剪辑实例位置和角度 的方法。
2.了解AS3中的类的特征
在 ActionScript 面向对象的编程中,任何类都可以包含三种类 型的特性:属性、方法、事件。这些元素用于管理程序使用的各种 数据并决定执行哪些操作及执行顺序。 (1)属性:表示某个对象中绑定在一起的若干数据块中的一个。 MovieClip类具有rotation、x、Width和alpha等属性。可以同处理单 个变
flash中影片剪辑的排列顺序控制
flash中影片剪辑的排列顺序控制和拖拽效果在作flash新闻图片轮换的时候,经常会用到对多个影片剪辑的前后顺序排列问题,下面通过一个简单的小例子实现对影片剪辑的顺序控制,并且顺便附加拖拽效果。
首先,打开falsh8,插入两个图形元件,一个方形,一个圆形。
下述实例与代码,参考https:///lsunwing/article/details/4879175 文章修改并测试,纠正其中. startDrag(true) 鼠标释放而影片剪辑不能脱离鼠标的不足。
在舞台上将两个元件拖入同一图层,分别实例化。
圆形实例名为mc1,方形实例名为mc2,如下图。
实现功能:点击圆形mc1, 圆形在上层显示,同时实现拖曳,鼠标释放,拖曳终止;点击方形mc2, 方形在上层显示,同时实现拖曳,鼠标释放,拖曳终止。
显示层顺序控制,涉及As2的实例.swapDepths(n) 方法,n值大显示在上层,n值小显示在下层;拖曳使用实例. startDrag() 方法开始拖曳,实例.stopDrag() 方法终止拖曳。
代码如下,写在第1帧。
stop();mc1.onPress = function () {mc1.swapDepths(2); //使mc1圆形位于上方,深度值大==2mc2.swapDepths(1); //使mc2方形位于下方,深度值小==1mc1.startDrag(); // mc1开始拖拽}mc1.onRelease = function(){mc1.stopDrag(); //mc1拖拽终止}mc2.onPress = function(){mc2.swapDepths(2); //使mc2方形位于上方,深度值大==2mc1.swapDepths(1); //使mc1圆形位于下方,深度值小==1mc2.startDrag(); //mc2开始拖拽}mc2.onRelease = function(){mc2.stopDrag(); //mc2拖拽终止}运行效果如下。
flash脚本基本控制
拓展任务——跟踪鼠标轨迹
•览相册
效果图如下图,自己考虑应该如何设计动画。
本节制作一个控制箭头的演示动画。在动画的右下角有四个按 钮,当选择对应的按钮,就运行对应的箭头。如下面所播放的效果 。
实例讲解
2 浏览器/网络控制
2.1 浏览器/网络控制的制作方法 2.2 上机指导——导航条的制作
浏览器/网络控制
•上机指导—制作导航条
1、制作导航按钮,定义按钮的几个鼠标动作的帧变化。 2、将每个导航按钮在场景中创建对应的实例。 3、为每个按钮添加鼠标按下的动作脚本,如: on(press){ getURL(""); } 其效果如下:
Flash脚本(了解)
本节主要内容: •影片剪辑控制 •时间轴控制 • 浏览器/网络控制
1、影片剪辑控制
1.1 影片剪辑控制的制作方法
1、影片剪辑控制
1、时间轴控制
1.1 时间轴控制的制作方法 1.2 上机指导――控制箭头的运动
1.1 时间轴控制的制作方法
1.2 上机指导――控制箭头的运动
拓展任务——跟踪鼠标轨迹
①画圆形的球,用黑红的放射渐变色填充,并将其转换成名为“球” 的图形元件。 ②创建名为“球”的按钮元件,在按钮元件编辑区中,第1帧【弹起】 空置,选中第2帧【指针经过】,居中拖入图形元件“球”。选中第4 帧的【单击】,按功能键F5插入普通帧。 ③创建名为“球”的影片剪辑元件,第1帧居中插入名为“球”的按 钮元件。在第2帧处插入关键帧,居中插入名为“球”的图形元件, 并调整该图形元件实例的大小和透明度。 在第4、9、ll、15、20、25 帧处分别插入关键帧,在这些关键帧处,调整该图形元件实例的大小、 亮度和透明度,使得球在运动渐变的过程中产生动感。分别选中第2、 4、9、11、15、20关键帧,创建运动渐变动画。
flash影片剪辑的控制与用法
Flash常用mc属性控制方法Flash中有图形、按钮和影片剪辑这三种类型的元件,总结一下Flash的属性控制应用。
效果简介:这是一个使用电影属性来完成的综合效果。
想通过这个具体实例讲解影片剪辑属性的作用及其使用方法。
应该先知道这个概念——从库中拖拽到场景中的元件就是一个实例。
只有影片剪辑、按钮实例能使用电影属性。
文章中将学到使用常用电影属性实现的一些效果。
制作步骤:设置场景的大小为480px×360px,背景色为#893300,帧频为12fps。
1.把主场景中的"图层 1"改名为"图片"层,然后导入一张图片,笔者使用的一个滑梯图片,其大小是(60px,30px)。
2.鼠标左键选中滑梯图片,按F8键,在弹出的"创建新元件"面板中把该图片转换成"滑梯"影片剪辑元件。
接着在其编辑场景的"属性"面板如图 2所示进行设置,即让滑梯以场景的左角定点在场景的中心,如图 3所示,这在需要给影片剪辑严格定位的编程中经常使用。
图 2图 33.回到主场景。
选中"滑梯"元件,然后在"属性"面板中给该元件起个实例名"mc"。
4.下面我们先来编写一段程序让读者可以通过方向键来自由控制实例"mc"的运动。
右键点选实例"mc",在弹出的菜单中选择"动作"命令,然后在打开的"动作"面板中键入如下代码(专家模式下):帧被载入时执行onClipEvent (enterFrame) {如果敲击左方向键,实例"mc"左移15pxif (Key.isDown(Key.LEFT)) _x -= 15;不让实例"mc"跑到按钮区里if (_x<=100) _x = 100;如果敲击右方向键,实例"mc"右移15pxif (Key.isDown(Key.RIGHT)) _x += 15;不让实例"mc"从场景右面外跑出去if (_x>=480-_width) _x = 480-_width;如果敲击上方向键,实例"mc"上移20pxif (Key.isDown(Key.UP)) _y -= 20;不让实例"mc"从场景上面外跑出去if (_y<=0) _y = 0;如果敲击下方向键,实例"mc"下移20pxif (Key.isDown(Key.DOWN)) _y += 20;不让实例"mc"从场景下面外跑出去if (_y>=360-_height) _y = 360-_height;}在代码中,使用到了_x、_y、_width、_height这四个电影属性了。
FLASH 动画的控制
on (release) { play(); }
这个语句没有指明路径,当添加在按钮上时,它控制的是 包含有按钮对象的当前时间轴,即按钮的父时间轴;当添加在 影片剪辑对象上时,它控制的是影片剪辑对象自身的时间轴, 由于控制自身时间轴不需要指明路径,因此也不必在“属性” 面板中命名。 如果要在影片剪辑上添加控制当前场景的动作,则需要指明路 径,如: on (rollOut) { _root.play(); }
如果要在按钮上添加控制位于同一场景的 影片剪辑,则需要在属性面板中为影片剪辑 命名,并指明路径,如: on (release) { _root. mc.stop(); } 路径概念非常重要,在编写动作脚本时, 如果路径的指向不正确,就实现不了预期的 效果。
影片剪辑事件onClipEvent(movieEvent) movieEvent动作包括下面的变量: Load 在播放器使用过程中,载入指定的动 画或其他内容 onClipEvent(load){ trace(”yesterday once more”);} Unload 卸载指定的动画。
翻页影片剪辑事件为影片剪辑添加动作的方法是选中场景上要为其添加动作的影片剪辑这时动作面板标题栏上显示的标题是动作影片剪辑这表明当前要为其添加脚本的对象是影片剪辑然后在脚本编辑窗口中添加动作
动画控制
在Flash中添加动作脚本可以分为两种方式, 一是为“帧”添加动作脚本,二是向“对象” 添加动作脚本。 “帧”动作脚本,是指在时间轴的“关键帧” 上添加的动作脚本。 “对象”动作脚本,是指在“按钮”元件和 “影片剪辑”元件的实例上添加的动作脚本。 请注意,“图形”元件上是不能添加动作脚 本的。 事件包括帧,影片剪辑事件和鼠标按钮事件
1.on(release){ Trace(“hello”); } 1.on(release){ play(); }
控制影片剪辑内部的影片剪辑实例
步骤二:制作反馈信息影片剪辑
(3)在影片剪辑“反馈信息”中,插入一个 图层【动画】,保持第一帧空白,从第2帧到 第17帧,制作一个帧并帧动画,负责以动画的 形式显示一个对号,如下图所示: Nhomakorabea
(4)同理在第18帧到第29帧,制作一个帧并 帧动画,负责以动画的形式显示一个错号。 (5)在【动画】图层上方建立一个图层【as 】,并在该图层的第1帧、第17帧、第29帧, 输入代码“stop()”,这样做的目的是使得“反 馈信息”这个动画在播放的时候,可以在运行 到上述帧的时候停止播放,它们分别对应着开 始,显示完对号的播放,显示完错号的播放。 (6)该影片剪辑的图层结构如上图所示:
步骤一:准备工作
(1)打开Flash,执行【文件】|【新建 】命令,新建一个影片文档,舞台大小 设置为550*400,其余设置保持默认值, 并通过按【Ctrl+S】,将该文件保存为“ 影片剪辑的播放与停止.fla”。 (2)通过该Flash的库面板左下方的按钮 “”,新建一个按钮元件“反馈信息” 。
控制影片剪辑内部的影片剪辑实例的播放
实例重点:掌握不在一个层级的影片剪 辑实例的引用 步骤一:准备工作 (1)制作一图形元件“飞机” 步骤二:制作一发射子弹影片剪辑
实例:控制影片剪辑的播放与 停止
实例目的:掌握如何控制影片剪辑的播 放与停止 实例重点:掌握如何使用Flash制作填空 题
Flash CS3 入门 控制影片
Flash CS3 入门 控制影片控制影片的播放、暂停和停止是Flash 交互动画的基础知识,本实例将通过控制“人物行走”影片使读者更加直观的掌握这一知识,由于ActionScript3对比ActionScript2有很大改动,所以一些了解ActionScript 的读者也应该尽快过程到ActionScript3中,毕竟ActionScript3的语言结构更加合理,更加像一门编程语言。
练习要点● 复制帧● 为按钮创建脚本● 使用【插入目标路径】工具● 控制影片练习过程(1)打开“人物行走”实例,按着Ctrl 键不放,选择人物和投影所在的关键帧,在关键帧上右击鼠标,选择菜单中的【复制帧】命令,如图78-1所示。
图78-1 复制帧(2)按Ctrl+N 快捷键新建文档,按Ctrl+F8快捷键打开【创建新元件】对话框,在【名称】中输入“人物行走动画”,【类型】选择【影片剪辑】,在“人物行走动画”工作区中的第1帧上右击鼠标选择【粘贴帧】命令,将动画粘贴到新文档中,如图78-2所示。
图78-2 粘贴动画在粘贴动画过程中,Flash 会自动将所有和该动画有关的元素一起复制过来。
这样读者就应该经常清除【库】面板中多余的元素,可以减少SWF 文件的大小。
(3)返回场景中,按Ctrl+R快捷键打开【导入】对话框,导入KZYP.png图像,按Ctrl+J 快捷键执行【修改】|【文档】命令,打开【文档属性】对话框,设置【尺寸】和【背景颜色】,如图78-3所示。
图78-3 导入图像(4)新建图层,将【库】面板中的“人物行走动画”元件拖入场景中,在【属性】面板中对其进行大小、位置和实例名称的编辑,如图78-4所示。
在调整大小时,要注意【宽】和【高】的关联,否则会出现人物比例失调。
图78-4 更改元件属性(5)双击“人物行走动画”元件,进入该元件的工作区,选择人物,在【属性】面板【颜色】选项中选择【色调】,在后面的颜色选择器中选择白色,如图78-5所示。
大学信息技术高一《Flash—影片剪辑》教育教学课件
5.不同场景中影片剪辑的跳转
场景1的影片A_mc中有一按钮A_btn,场景2帧标签bb处有一影 片B_mc, B_mc中帧标签cc处有一影片C_mc, 要使点击按钮 A_btn播放影片C_mc,若在按钮中加action: _root.gotoAndStop(“场景2” ,“bb”);是错误的, 由于 mc.gotoAndPlay();没有带场景参数的函数原型,只有 mc.gotoAndPlay(frame); 所以直接利用帧标签跳转而不能 写出场景名,方法同题4.
on (press) { gotoAndStop(1);
}
方法2:显示与隐藏
• “点火”与“熄火”按钮,fire_mc影片在同一帧处,要实现相同成 效,则fire_mc中的Action为:
onClipEvent (load) {
this._visible=0;
}
• “点火”按钮的Action
“熄火”按钮的Action:
二.影片剪辑结构控制
1. 影片剪辑连续播放
• 若影片剪辑A_mc在第1帧,影片剪辑B_mc在第2帧,要使影片剪辑 A_mc播放完毕之后播放影片剪辑B_mc: 在影片剪辑A_mc所在第1帧处: stop(); 在影片剪辑A_mc中最后一帧: _root.gotoAndStop(2);
2. 按钮控制影片剪辑的播放
_root.mc2 _root.mc1.mc3
this: 当前影片剪辑
this.mc3(mc1mc3) this.mc4(mc2mc4)
_parent: 上一级影片剪辑
this._parent(mc3mc1) this._parent.parent.mc2(mc3mc2)
3.With语句
例1: 机器人1
flash影片剪辑控制方法
flash影片剪辑控制方法影片剪辑影片剪辑是Flash中最重要的一种元件,对影片剪辑的控制是ActionScript的最重要功能之一。
从根本上说,Flash的许多复杂动画效果和交互功能都与影片剪辑的运用密不可分。
使用点语法或方括号可以定位影片剪辑。
使用方括号时可以使用由变量表示的影片剪辑实例名,这是它相对于点语法的优点。
可以用脚本控制影片剪辑的各种动作,也可以在影片剪辑的事件处理函数中控制主时间轴和别的影片剪辑。
影片剪辑最重要的两个事件是load和enterFrame。
5.1 控制影片剪辑的播放动作设想一个Flash动画,它的主场景中只有一个帧,舞台中只有一个影片剪辑,影片剪辑中并没有ActionScript。
如何才能控制影片剪辑的播放动作呢?要控制一个影片剪辑,首先应该为影片剪辑命名。
容易混淆的是,库面板中的影片剪辑本身有一个名称,这里要命名的是场景中影片剪辑实例的名称。
它们可以相同,也可以不相同。
如果你在场景中创建了同样的影片剪辑的多个实例,那么就需要将每个实例以不同的名称命名,才能用ActionScript对每一个实例进行控制。
如果不需要对影片剪辑进行控制,也就不需要为影片剪辑的实例命名。
从本例文件中,你将看到库面板中只有一个影片剪辑rollmc,场景中创建了一个rollmc的实例。
你还可以再从库中拖出若干个rollmc的实例将它们放置到场景中。
选中场景中影片剪辑rollmc的实例,打开属性面板,可以看到它被命名为roll,你同时可以看到该影片剪辑原来的名字rollmc,如图5-1所示。
你也可以为它指定别的名称,也可以是rollmc,Flash并不会混淆它们之间的区别。
此主题相关图片如下:图5-1 为影片剪辑实例命名实例名称可以在程序中用来指代该影片剪辑实例,如果要控制该实例,就需要在脚本中使用该名称。
下面,我们就来看看如何通过脚本控制影片剪辑实例roll。
分别选中场景中的4个按钮,打开它们的动作面板,查看其中的代码。
制作Flash影片播放器(播放进度条、音量调节滑块、控制按钮)的方法和代码
制作Flash影片播放器(播放进度条、音量调节滑块、控制按钮)的方法和代码制作Flash影片播放器(播放进度条、音量调节滑块、控制按钮)的方法和代码一、制作音量控制滑块1.启动FLASH软件。
2.确立文档属性设置动画尺寸帧频背景等。
3.首先将准备好的素材图片和歌曲导入到库中待用。
4.创建影片剪辑元件选择“插入-新建元件”,建立一个名为“音量控制”的影片剪辑元件,点击确定,进入元件编辑区。
添加一个图层,共两个图层。
自下而上命名为底板、滑块。
A.选择底板图层第一帧,用矩形工具在舞台拖一个规格80*14的,无边线的橙色矩形(图2-1),然后,用选择工具将其左边上角向下拖至底角,成为三角形(图2-2),点击该实例,左对齐-垂直中齐。
上锁。
B.选择滑块图层第一帧,用矩形工具在舞台拖一个规格5*18的,无边线的浅绿色矩形,将其放置在底板的中间,垂直中齐。
将其转换为影片剪辑元件。
点击该实例,按f9,打开动作面板,在as编辑区输入,如下影片剪辑指令语句:onClipEvent (enterFrame){mex = getProperty(this, _x);vol.setVolume(mex / 9.800000E-001);}onClipEvent (load){vol = new Sound();}onClipEvent (mouseDown){if (this.hitTest(_root._xmouse, _root._ymouse)){startDrag (this, false, 0, 0, 80, 0);}}onClipEvent (mouseUp){stopDrag ();}锁定该图层。
二、制作播放进度条选择“插入-新建元件”,建立一个名为“播放进度”的影片剪辑元件,点击确定,进入元件编辑区。
添加一个图层,共两个图层。
自下而上命名为底板、滑块。
A.选择底板图层第一帧,用矩形工具在舞台拖一个规格220*8的,无边线的黄色矩形,点击该实例,左对齐-垂直中齐。
Flash 动画制作第5章 Flash常用交互技术——影片控制
Flash最令人称道的一方面就是其具有强大的交互功 能。从本章开始,将通过对大量Flash网页应用实例 的列举及其制作过程的展示,向读者展示网页设计 中常见的Flash高级动画效果和交互技术。
5.1 影片播放控制
实例效果:
5.1 影片播放控制
• 实例效果:
if(条件) { //条件成立时执行的内容 }
5.4.4 实例制作
• 在本例中,涉及到了使用动态文本显示变量值的问题。因此, 应当为动态文本指定相应的变量,并通过按键而修改动态文本 的变量值。步骤如下:
• 填充背景图形
绘制飞机图形
5.4.4 实例制作
步骤如下:
对齐实例
创建动态文本框
THANKS
gotoAndPlay(场景名称,帧数或帧标签);
5.1.2 实例制作
本例中包含1个正方形移动的动画和5个按钮。将通过为这5个 按钮实例添加相应的ActionScript语句来实现按钮对动画播 放的各种控制。步骤如下:
修改文档属性
创建box图形元件
5.1.2 实例制作
• 步骤如下:
设置旋转方式和次数
5.1.1 时间轴控制函数
时间轴控制函数主要用来控制帧和场景的播放、停 止及跳转等,这类函数包括如下几种。
play():在时间轴中向前移动播放头,使动画对象从 当前位置开始播放。
stop():停止当前正在播放的影片。此动作最通常 的用法是用按钮控制影片剪辑。
gotoAndPlay():将播放头转到场景中指定的帧并 从该帧开始播放。其一般用法为:
绘制图形
添加文本
5.4 键盘控制影片剪辑
• 实例效果:
5.4 键盘控制影片剪辑
flash中控制剪辑运动
}
第一句不用解释了,使myMc处于X轴为0的位置上。
下面
onEnterFrame=function(){}
这是flash里常见的一种形式,onEnterFrame简单解释一下,就是使{}里边的程序体,按照帧频的频率来运行。
比如上面的例子中,如果你的flash文件帧频是25,那么,myMc._x=myMc._x+1就在一秒钟内运行了25次。
最后向初学者解释一下myMc._x=myMc._x+1的意思,这句话实际上就是把右侧myMc._x+1的值赋给左侧的myMc._x.。比如第一次循环的时候,myMc._x的值是0,那么0+1以后,再赋给myMc._x,此时myMc._x变成1,循环第二次的时候,1+1再赋给myMc._x,此时myMc._x的值变成2。当然,这句程序还有个更简单的写法:myMc._x++;作用和myMc._x=myMc._x+1的作用是一样的。
但是,有人可能也发现了问题。就是没有办法让动画停下来。这是因为如果我们不把onEnterFrame清除的话,它会一直以帧频的频率运行下去。这不仅使你的动画停不下来,而且还将一直占用着你的CPU资源。所以,当onEnterFrame的任务完成以后,一定要把它及时地结束。
使用delete onEnterFrame可以清除正在运行的onEnterFrame。
那么,如果我们使用as,又如何让影片剪辑动起来呢?只要我们也以帧频的速度控制影片剪辑的属性就行了。
下面介绍一些影片剪辑常见的属性。剩下的大家可以去查flash的帮助。(使用帮助是自学软件语言最方便的学习方法,只要按F1就出来了。)
在上一篇中其实我们已经接触到了一些。
介绍一种控制Flash影片剪辑正倒播放及其播放速度的方法
介绍一种控制Flash影片剪辑正倒播放及其播放速度的方法学习心得 2007-03-16 23:47:07 阅读1154 评论2字号:大中小订阅如果一个影片有N帧,我们测试时往往是从第一帧自动开始播放,而且其播放速度是按制作时设置的帧频计算的。
那么,我们是否可以通过AS代码来控制其正播、倒播以其播放速度呢?要搞清楚这个问题,我们首先来简单地分析一下Flash自动播放的过程。
Flash自动播放时,首先播放第一帧,当达到制作时设置的帧频时间,就开始播放第二帧,就这样按照制作时设置的帧频顺序播放,当播放到第后一帧时,又自动跳回到第一帧开始播放。
由此可见,我们可以使用gotoAndStop来有效地控制正播、倒播以及其播放速度。
比如说,我们要控制正播,首先gotoAndStop(1),达到制作时设置的帧频后,就gotoAndStop(2),就这样反复执行,不就达到象Flash自动播放一样呀。
如果每次gotoAndStop的帧数值是减少的,就实现了倒播放。
如果每次多跳转几帧不就实现了对播放速度的控制了吗?好了,按这个想法,我们动手来试试吧。
如果你有一个有许多帧的影片剪辑元件,把它拖到场景中,取实例名为mc。
再在场景中放上两个按扭,一个控制正播放及其播放速度,另一个控制倒播放及其播放速度。
并分别取实例名:btn1、btn2在场景的第一帧上写如下代码:mc.stop()//为了看清控制效果,开始让这个mc不播放var Skip:Number=0//定义一个跳转控制变量,为0时相当于停止不播放mc.onEnterFrame = function() {//利用帧频触发来实现帧的跳转var pf:Number=mc._currentframe+Skip//计算出当前应该跳转到的帧,当前帧+跳转变量,如果跳转变量为负,即倒播放if (pf<0){//如果当前应该跳转的帧为负,pf+=mc._totalframes//则加上总帧数,实现自动从最后开始回播}if (pf>mc._totalframes){//如果当前应该跳转的帧大于总帧数pf-=mc._totalframes//则减去总帧数,实现自动从头开始回播}mc.gotoAndStop(pf)//使用mc的播放控制}btn1.onRelease = function() {//控制正播按扭Skip++//每按一次,跳转变量自动加1if (Skip>mc._totalframes){//如果跳转变量累加到大于总帧数,则不再累加Skip=mc._totalframes}}btn2.onRelease=function(){//控制倒播按扭Skip--//每按一次,跳转变量自动减1if (Skip<-mc._totalframes){//如果跳转变量累减到负的总帧数,则不再减Skip=-mc._totalframes}}跳转变量Skip为0时,停止播放,为1时,按照帧频速度正播放,大于1时,正加速播放,越大播放速度越快。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
flash影片剪辑控制方法影片剪辑影片剪辑是Flash中最重要的一种元件,对影片剪辑的控制是ActionScript的最重要功能之一。
从根本上说,Flash的许多复杂动画效果和交互功能都与影片剪辑的运用密不可分。
使用点语法或方括号可以定位影片剪辑。
使用方括号时可以使用由变量表示的影片剪辑实例名,这是它相对于点语法的优点。
可以用脚本控制影片剪辑的各种动作,也可以在影片剪辑的事件处理函数中控制主时间轴和别的影片剪辑。
影片剪辑最重要的两个事件是load和enterFrame。
5.1 控制影片剪辑的播放动作设想一个Flash动画,它的主场景中只有一个帧,舞台中只有一个影片剪辑,影片剪辑中并没有ActionScript。
如何才能控制影片剪辑的播放动作呢?要控制一个影片剪辑,首先应该为影片剪辑命名。
容易混淆的是,库面板中的影片剪辑本身有一个名称,这里要命名的是场景中影片剪辑实例的名称。
它们可以相同,也可以不相同。
如果你在场景中创建了同样的影片剪辑的多个实例,那么就需要将每个实例以不同的名称命名,才能用ActionScript对每一个实例进行控制。
如果不需要对影片剪辑进行控制,也就不需要为影片剪辑的实例命名。
从本例文件中,你将看到库面板中只有一个影片剪辑rollmc,场景中创建了一个rollmc的实例。
你还可以再从库中拖出若干个rollmc的实例将它们放置到场景中。
选中场景中影片剪辑rollmc的实例,打开属性面板,可以看到它被命名为roll,你同时可以看到该影片剪辑原来的名字rollmc,如图5-1所示。
你也可以为它指定别的名称,也可以是rollmc,Flash并不会混淆它们之间的区别。
此主题相关图片如下:图5-1 为影片剪辑实例命名实例名称可以在程序中用来指代该影片剪辑实例,如果要控制该实例,就需要在脚本中使用该名称。
下面,我们就来看看如何通过脚本控制影片剪辑实例roll。
分别选中场景中的4个按钮,打开它们的动作面板,查看其中的代码。
“STOP”按钮:on (release) {roll.stop();}单击“STOP”按钮使roll实例停止播放。
“PLAY”按钮:on (release) {roll.play();}单击“PLAY”按钮使roll实例继续播放。
“PREV”按钮:on (release) {roll.prevFrame();}单击“PREV”按钮使roll实例回退一帧并停止。
“NEXT”按钮:on (release) {roll.nextFrame();}单击“NEXT”按钮使roll实例播放一帧并停止。
按Ctrl+Enter键测试影片,如图5-2所示。
一开始影片剪辑自动播放。
单击不同的按钮看看影片剪辑是否执行相应的动作。
除了这几种命令,你还可以使用gotoAndStop或gotoAndPlay命令控制影片剪辑跳转到具体的帧,但是在命令前面都需要指定影片剪辑的实例名称。
这种方法是在影片剪辑实例所在的层级中控制影片剪辑,如果是在影片剪辑内部,要控制它自身的播放,就可以直接使用stop、play等命令,而不需要指定实例名称。
如果你在影片剪辑内部的时间轴中使用了名称roll,Flash会在影片剪辑内部的时间轴中寻找该实例。
5.2 定位影片剪辑我们已经了解了如何使用最简单的方法定位一个影片剪辑,即使用影片剪辑的实例名,后面紧跟一个点记号“.”,然后是你想要影片剪辑执行的命令。
还有许多方法可以定位影片剪辑。
首先,我们来看看如何定位Flash影片中不同层级的对象。
Flash影片中最基本的目标层级就是它的主时间轴。
可以用关键字_root来表示和定位主时间轴。
例如,你要向主时间轴发送一个gotoAndStop命令,可以使用如下所示的语句:_root.gotoAndStop(9);如果这个命令是包含在主时间轴的某一帧上的,则可以省略目标_root。
如果这个命令是包含在主时间轴上某个影片剪辑中,需要由影片剪辑来控制它上一级的主时间轴,_root就很有必要了。
通常,要定位包含某一对象的上一级对象,可以使用关键字_parent。
所以,如果一个影片剪辑是包含在主时间轴中,在影片剪辑中使用_parent和_root的效果是一样的。
如果影片剪辑与主时间轴相差两个层级,即当影片剪辑包含在另一个位于主时间轴中的影片剪辑中,这时在该影片剪辑中使用_parent指代的是它上一级的影片剪辑,而_root是指它上两级的主时间轴。
在主时间轴中不能使用_parent,因为主时间轴没有上一级。
可以用数字来方便地说明这种层级关系。
主时间轴,它始终是最初级,作为层级0。
主时间轴中的一个影片剪辑处于层级1。
如果影片剪辑中包含另一个影片剪辑,它处于层级2。
对层级2上的影片剪辑来说,_parent指代的就是层级1上的影片剪辑,而不管对哪一级来说,_root始终指代层级0上的主时间轴。
除了用点记号连接_root和实例名,还可以使用方括号表示_root上的对象。
对上例中的按钮“STOP”来说,如下所示的3种方法作用是一样的:rool.stop();_root.roll.stop();_root["roll"].stop();还有一个关键字this,它代表脚本当前所在的层级。
如果脚本位于主时间轴中,this即指代主时间轴;如果脚本位于影片剪辑中,this即指代该影片剪辑。
所以以上语句还可以用以下两种方式表示:this.roll.stop();this["roll"].stop();使用_root和this时还可以用变量来定位影片剪辑,如下所示:var mcInsName = "roll";_root[mcInsName].stop();今后我们会遇到这种情况,即有roll0~rool99共100个影片剪辑实例,可以使用下面的语句来控制它们:on (release) {for (var i = 0; i<100; i++) {_root["roll"+i].stop();}}多数情况下我们习惯使用_root,但在某些情况下使用this比_root更简便。
如要在某个影片剪辑中定位包含在此影片剪辑中的另一影片剪辑childMC,就可以直接使用this.childMC。
5.3 为影片剪辑添加脚本现在你已经知道如何向帧和按钮中添加脚本,下面需要知道如何向影片剪辑中添加脚本。
要为影片剪辑添加脚本,首先要选中影片剪辑,再打开它对应的动作面板,然后在其中输入脚本。
影片剪辑脚本和按钮的脚本类似,它们都使用事件处理函数,与按钮的on关键字不同,影片剪辑使用onClipEvent关键字。
当某种影片剪辑事件发生时,就会触发相应的事件处理函数。
影片剪辑最重要的两种事件是load和enterFrame。
load事件在影片剪辑完全加载到内存中时发生。
在每次播放Flash影片时,每个影片剪辑的load事件只发生一次。
在主时间轴停止播放时,影片中的影片剪辑并不会停止播放,这个特性决定了影片剪辑的另一个事件enterFrame的重要性。
enterFrame事件在影片每次播放到影片剪辑所在帧时发生。
如果主时间轴中只有一帧,且不论它是否在该帧停止,该帧中的影片剪辑都会不断触发enterFrame事件,且触发的频率与Flash影片的帧频一致。
影片剪辑事件的使用方法如下所示:onClipEvent (load) {var i = 0;}onClipEvent (enterFrame) {trace(i);i++;}当影片剪辑的load事件发生时,将变量i设置为0。
当影片剪辑的enterFrame事件发生时,向输出窗口中发送i的值,然后将i加1。
输出窗口中会从0开始输出以1递增的数字序列,直到影片被关闭为止。
为了熟悉影片剪辑事件处理函数的用法,我们来为影片剪辑编写一段简单的脚本,使影片剪辑逆序播放,我们将从影片剪辑的最后一帧处开始播放,使用prevFrame命令使影片剪辑每次后退一帧。
本例文件场景中有一个影片剪辑元件rollmc,查看一下它的属性面板,并没有为其实例命名,这是因为我们要直接在影片剪辑的动作面板中添加脚本,并不需要用到实例名称。
选中影片剪辑rollmc,此时动作面板的标题栏中应为“动作-影片剪辑”。
打开动作面板,其中添加了如下ActionScript:onClipEvent (load) {gotoAndStop(40);}onClipEvent (enterFrame) {prevFrame();}在事件处理函数onClipEvent (load)中,令Flash影片的播放头转到影片剪辑的第40帧(即最后一帧)。
这个事件处理函数只在影片剪辑被加载完成时执行1次。
第2个事件处理函数onClipEvent (enterFrame)每播放1帧就执行1次,使影片剪辑回退1帧。
按Ctrl+Enter键测试影片,你将看到齿轮以与上例相反的方向转动,直到影片剪辑的时间轴回到第1帧,prevFrame命令不起作用,影片剪辑停止播放。
要让它连续不断的播放,可以在影片剪辑元件rollmc的时间轴第1帧的动作面板中添加如下语句:gotoAndStop(40);5.4 用影片剪辑控制别的影片剪辑一个影片剪辑可以控制别的影片剪辑。
综合使用_root或_parent关键字、点符号和影片剪辑实例名称可以将命令发送给另一个影片剪辑实例。
例如,在主时间轴上的影片剪辑实例roll1中添加如下脚本以控制同在主时间轴上的影片剪辑实例roll2回退1帧:_root.roll2.prevFrame();或者使用方括号表示如下:_root["roll2"].prevFrame();如果两个影片剪辑不同在主时间轴上,而是同在别的层级上,可以使用_parent关键字。
如果它们不同在一个层级上,也只需要使用点符号逐级标明所在的路径即可。
下面综合运用以上知识实现以影片剪辑控制另一个剪辑的播放动作。
(1)打开本例文件。
分别查看场景中的每一层。
按Ctrl+L打开库面板。
库面板中有三个影片剪辑元件,分别是hour、minute和second。
(2)分别双击每个影片剪辑元件,查看它们的时间轴。
(3)second元件的的时间轴共60帧,secondhand图形元件顺时针旋转1周。
在第1帧中添加了如下ActionScript:stop();在最后1帧中添加了如下ActionScript:_root[target].nextFrame();gotoAndStop(1);(4)minute元件的的时间轴共60帧,minutehand图形元件顺时针旋转1周。
在第1帧中添加了如下ActionScript:stop();在最后1帧中添加了如下ActionScript:_root[target].nextFrame();gotoAndStop(1);(5)hour元件的的时间轴共12帧,hourhand图形元件顺时针旋转1周。