2、制作可以点击的对象
(1)新建一个Fla文档,命名为Simple.fla。使用矩形工具在工作区中绘制一个矩形,选中它以后按“F8”键,将矩形转换为Movie Clip,命名为Symbol。选中矩形元件,在属性面板中为矩形添加实例名为juxing,如图10所示。
图10
(2)取消对矩形元件的选择,按F9键打开Actions面板,输入如下代码:
juxing.addEventListener(MouseEvent.CLICK,clickHandler); function clickHandler(event:MouseEvent):void { trace("你点击我了哦"); } |
在这段代码中juxing实例变为可以点击的对象了,因为我们加入了事件侦听(EventListener)来检测用户是否点击了对象,当用户点击juxing影片剪辑以后clickHandler()就会开始运行。在以前的版本中,则需要在组件中加入侦听事件,然后使用onPress()事件来检测用户是否点击了对象。
(3)如果将上面MouseEvent.CLICK变为MouseEvent.DOUBLE_CLICK则可以实现双击的效果。不过由于MovieClip对于双击事件默认为false状态,所以需要首先将它变为True状态,加入juxing.doubleClickEnabled = true;就可以了,此时的代码如下:
juxing.doubleClickEnabled = true; juxing.addEventListener(MouseEvent.DOUBLE_CLICK, clickHandler); function clickHandler(event:MouseEvent):void { trace("现在你可以双击我哦"); } |
(4)按“Ctrl+Enter”组合键,预览效果。在你双击矩形时,会弹出一个窗口显示我们所设定的文字,如图11所示。
图11
如果想要实现鼠标移动到矩形上显示手形的效果,可以加入如下代码:
juxing.buttonMode = true;
3、制作可以拖动的对象
如果想让用户在影片中能够拖动矩形,可以为mouseDown和mouseUp加入两个事件侦听:mouseDown(MouseEvent.MOUSE_DOWN)和mouseUp(MouseEvent.MOUSE_UP)。
继续在上面的实例中进行操作,将其中的代码用如下部分替换:
juxing.buttonMode = true; juxing.addEventListener(MouseEvent.CLICK,clickHandler); juxing.addEventListener(MouseEvent.MOUSE_DOWN,mouseDownListener); juxing.addEventListener(MouseEvent.MOUSE_UP,mouseUpListener); function clickHandler(event:MouseEvent):void { trace("你可以拖动并单击我哦"); } function mouseDownListener(event:MouseEvent):void { juxing.startDrag(); } function mouseUpListener(event:MouseEvent):void { juxing.stopDrag(); } |
测试一下效果,你会发现可以拖动矩形移动了,这样就完成了一个可以拖动对象的制作。
需要说明的是,假如再写一个这样可以被拖动的对象,利用外部的as文件实现简化,将上述代码封装到as文件中,在需要使用这种效果的时候将元件与类链接到一起就可以了,这将用到将代码转换成类的方法。
好了,现在就对Flash 9预览版的一些新功能做了简单介绍,关于Flash 9带给我们的新体验还需要我们进一步去挖掘!