仓酷云

 找回密码
 立即注册
搜索
热搜: 活动 交友 discuz
查看: 1140|回复: 7
打印 上一主题 下一主题

[学习教程] FLASH教程之Flash AS 教程:交互动画-Flash actionscript

[复制链接]
飘灵儿 该用户已被删除
跳转到指定楼层
楼主
发表于 2015-1-15 21:05:39 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
这个播放器非常小,只需花一点点时间下载,对于在体验网页上的多媒体效果是个很好的开始。
交互动画
最初先容一下交互动画,这大概是人人读这本书的次要缘故原由。假如不利用交互活动,那末只利用补间动画不就好了。在后面一章复杂地提到过,用户交互动画基于用户事务,总的来讲能够回结为鼠标事务和键盘事务,上面就来进修分歧的用户事务及其处置函数。
鼠标事务
AS3中鼠标事务产生了明显的变更。在AS2中,影片剪辑会主动增加鼠标侦听器。如今,要手动地为工具增加侦听器。在AS3中鼠标指针经由显现工具时才干触发鼠标事务。在AS2中,不管鼠标指针在那里,只需实行mouseDown或mouseMove就会触发一切的影片剪辑。而如今,mouseUp和mouseDown事务与AS2中的onPress和onRelase同等。鼠标事务的称号是界说好的字符串,像我们之前所提到的,最好利用MouseEvent类的属性,以免输出毛病,上面是MouseEvent类中一切可用的鼠标事务属性:
CLICK
DOUBLE_CLICK
MOUSE_DOWN
MOUSE_MOVE
MOUSE_OUT
MOUSE_OVER
MOUSE_UP
MOUSE_WHEEL
ROLL_OUT
ROLL_OVER
创立上面这个类,来测试一下,这个类会输入产生在Sprite影片上的鼠标事务称号。
package{
importFlash.display.Sprite;
importflash.events.MouseEvent;
publicclassMouseEventsextendsSprite{
publicfunctionMouseEvents(){
init();
}
privatefunctioninit():void{
varsprite:Sprite=newSprite();
addChild(sprite);
sprite.graphics.beginFill(0xff0000);
sprite.graphics.drawCircle(0,0,50);
sprite.graphics.endFill();
sprite.x=stage.stageWidth/2;
sprite.y=stage.stageHeight/2;
sprite.addEventListener(MouseEvent.CLICK,onMouseEvent);
sprite.addEventListener(MouseEvent.DOUBLE_CLICK,onMouseEvent);
sprite.addEventListener(MouseEvent.MOUSE_DOWN,onMouseEvent);
sprite.addEventListener(MouseEvent.MOUSE_MOVE,onMouseEvent);
sprite.addEventListener(MouseEvent.MOUSE_OUT,onMouseEvent);
sprite.addEventListener(MouseEvent.MOUSE_OVER,onMouseEvent);
sprite.addEventListener(MouseEvent.MOUSE_UP,onMouseEvent);
sprite.addEventListener(MouseEvent.MOUSE_WHEEL,onMouseEvent);
sprite.addEventListener(MouseEvent.ROLL_OUT,onMouseEvent);
sprite.addEventListener(MouseEvent.ROLL_OVER,onMouseEvent);
}
publicfunctiononMouseEvent(event:MouseEvent):void{
trace(event.type);
}
}
}
请注重,每一个事务范例都利用了统一个处置函数,输入所触发的事务范例的称号。
鼠标地位
除鼠标事务外,关于文档类另有两个十分主要属性用于暗示鼠标以后的地位:mouseX和mouseY。请注重,影片剪辑的地位,前往的值是鼠标的地位与影片剪辑的注册点的绝对地位。比方,有一个名为sprite的Sprite影片,在舞台的100,100地位,而鼠标的地位在150,250,你会失掉以下了局:
mouseX为150
mousey为250
sprite.mouseX为50
sprite.mouseY为150
请注重鼠标地位与影片地位的绝对干系。
键盘事务
键盘事务已被AS3分别到另外一个地区中。比方,在AS2中,影片剪辑会主动侦听键盘事务,但只在某种情形下才吸收这些事务。以是,最好增添一个专门用来做侦听器的影片剪辑,偶然,影片剪辑吸收了多个事务但被看做是一个键盘事务,如许就不合错误了。在AS2的构成框架中,很年夜部一部分都是为键盘交互服务的,好比FlashPlayer系统中的:tab(table)办理,核心(focus)办理及在文本框中关于Enter键与Table键的处置等。如今好了,键盘事务的称号与鼠标事务的类似,都是界说好的字符串,也可为KeyboardEvent类的属性。只要两种:
KEY_DOWN
KEY_UP
我们能够在一个特别的工具上侦听键盘事务,就像下面谁人鼠标侦听的例子一样。为了完成这个功效,我们必要设置工具的核心,以便可以捕捉这些事务,能够如许写:
stage.focus=sprite;
在良多情形下,侦听键盘事务是不是有核心很成心义,完成它只需间接对舞台举行键盘侦听。上面看一个示例:
package{
importflash.display.Sprite;
importflash.events.KeyboardEvent;
publicclassKeyboardEventsextendsSprite{
publicfunctionKeyboardEvents(){
init();
}
privatefunctioninit():void{
stage.addEventListener(KeyboardEvent.KEY_DOWN,onKeyboardEvent);
stage.addEventListener(KeyboardEvent.KEY_UP,onKeyboardEvent);
}
publicfunctiononKeyboardEvent(event:KeyboardEvent):void{
trace(event.type);
}
}
}
键码
一般人们其实不体贴一个键是不是被按下,而是体贴按下的是甚么键。利用键盘事务处置有几种办法能够读取输出的信息。后面说到,一个事务处置程序能够由一个事务工具来触发,该工具包含触发这个事务的数据。在键盘事务中有两个相干的属性,事务所触及的键:字符码(charCode)和键码(keyCode)。
字符码指按下的键所暗示的真正字符。比方,用户按下”a”键,字符码就是”a”,假如用户同时又按着shift键,如许字符码就是”A”。
键码指按键所代表的数值。假如用户按下”a”键,它所对应的键码为65,不管是不是按着别的键。假如先按下Shift键后按下“a”键,那末会取得两个键盘事务,先是Shift(键码16)后是a(键码65)。Flash.ui.Keyboard类一样也有一些属性是针对非字母键的,我们不必要把它们背上去。比方:Keyboard.SHIFT即是16,当Shift键按下后,能够测试其是不是即是Keyboard.SHIFT。请本章的最初一段代码:
package{
importflash.display.Sprite;
importflash.events.KeyboardEvent;
importflash.ui.Keyboard;
publicclassKeyCodesextendsSprite{
privatevarball:Sprite;
publicfunctionKeyCodes(){
init();
}
privatefunctioninit():void{
ball=newSprite();
addChild(ball);
ball.graphics.beginFill(0xff0000);
ball.graphics.drawCircle(0,0,40);
ball.graphics.endFill();
ball.x=stage.stageWidth/2;
ball.y=stage.stageHeight/2;
stage.addEventListener(KeyboardEvent.KEY_DOWN,onKeyboardEvent);
}
publicfunctiononKeyboardEvent(event:KeyboardEvent):void{
switch(event.keyCode){
caseKeyboard.UP:
ball.y-=10;
break;
caseKeyboard.DOWN:
ball.y+=10;
break;
caseKeyboard.LEFT:
ball.x-=10;
break;
caseKeyboard.RIGHT:
ball.x+=10;
break;
default:
break;
}
}
}
}
当我们在Flash编纂情况下测试影片时,IDE会拦阻用于把持IDE本身的键。Tab键和一切功效键和作为快速菜单项的键,在测试影片时不会吸收到。不外,我们能够在菜单当选择“把持”->“禁用快速键”,来排除限定。如许一来,测试的影片就像在扫瞄器中事情一样了。

Flash是一个非常优秀的矢量动画制作软件,它以流式控制技术和矢量技术为核心,制作的动画具有短小精悍的特点,所以被广泛应用于网页动画的设计中,以成为当前网页动画设计最为流行的软件之一。
不帅 该用户已被删除
沙发
发表于 2015-1-17 15:37:30 | 只看该作者
在网络营销中所提供的利益。如果我们仔细看看国内外的专业网站,很少看到应用FLASH格式的广告,如网络上的知名网站。相信它们并不缺乏FLASH图片的制作力量。
简单生活 该用户已被删除
板凳
发表于 2015-1-24 11:46:29 | 只看该作者
不过,要说国内在FLASH动画领域做的比较出色的,公认的是广州形动数码科技。
小魔女 该用户已被删除
地板
发表于 2015-2-1 10:59:46 | 只看该作者
富媒体广告的概念:富媒体 Rich Media,是由英文翻译而来,从字面上很难理解Rich Media到底是什么。
海妖 该用户已被删除
5#
发表于 2015-2-7 07:34:22 | 只看该作者
alpha通道,图像的一部分可以变成透明,透明度可以从完全不透明到完全不可见。Alpha通道支持没有副作用。
蒙在股里 该用户已被删除
6#
发表于 2015-2-21 11:15:10 | 只看该作者
flash制作的动画文件比较小,可以在网络上快速传播!
谁可相欹 该用户已被删除
7#
发表于 2015-3-6 21:23:02 | 只看该作者
逐渐改变了我们生活及生活习惯的一些东西,而正是互联网的大势兴起,Flash动画越来越受到宠爱,现在,Flash动画已成为网络广告的中坚力量。
山那边是海 该用户已被删除
8#
发表于 2015-3-13 22:10:03 | 只看该作者
flash的优缺点可以如何运用呢?
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|Archiver|手机版|仓酷云 鄂ICP备14007578号-2

GMT+8, 2024-12-23 02:12

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表