阳光VIP

少壮不努力,老大徒伤悲。平日弗用功,自到临期悔。
  博客园  :: 首页  :: 新随笔  :: 联系 :: 订阅 订阅  :: 管理

多媒体交互应用基础(11)

Posted on 2012-02-17 20:04  阳光VIP  阅读(143)  评论(0编辑  收藏  举报

问题一 如何使用键盘进行交互使用?

 

步骤:

 1.我们首先找到管理键盘类,了解这个类能够为我们带来什么帮助,通过帮助能够解决什么问题。

 2.导入需要使用键盘的类

 3.监听键盘输入了解键盘事件

通过监听KeyboardEvent.KEY_DOWN 事件,在输出面板可以输出,你按下了我。

KeyboardEvent 是为键盘交互提供的事件。通过这个我们使用键盘控制在flash场景里面的元素。

问题二,当键盘放开并松开的时候发生什么事情?

显然,当键盘松开的时候,会调度第Key_Up 这个事件。通过这样的组合我们可以创造一些交互的效果

问题三,如何通过键盘让场景里面的元素关联,让其产生动作

我们希望,按一个特定的键盘,让其产生交互效果,例如在游戏当中我们创建一个角色,通过键盘来控制角色运行或者其他的动作。

 

步骤:我们在场景里面加入我们想要的元素,如影片剪辑,在属性面板里面命名为mc

通过这个代码,上下左右,控制一个影片剪辑产生运动效果。但是这种方式并不理想,当运行的时候,总是觉得运行反应慢,其中原因之一在我们flash使用帧速是12,通过修改帧速可以让其产生一些明显改变,其次是在键盘响应的过程中会产生一些迟钝反应。

问题四,如何让键盘交互效果产生更加流畅的效果?

为了解决上面的问题,我们使用Event.ENTER_FRAME事件让动画产生流畅效果

 

步骤:加入事件监听stage.addEventListener(Event.ENTER_FRAME,Run);

 

代码:

 

当按下键盘的时候,产生一些真的值,当松开的时候产生一些假值,

通过这个组合产生更加流畅的运行的效果。

扩展:我们可以自由设定自己喜欢的键盘组合,通过获取键盘键值来产生交互的效果,从而在响应的时候,调动我们想要的结果trace("你按下的键盘值"+e.keyCode);

输出我们想要键值

通过if(e.keyCode=="一个值"){调度我们想要的结果}