flash mx 新的闪烁世界(第七天)
【程序编程相关:用Flash制作动感火焰字】 【推荐阅读:FlashMX04文字特效:残影动画(图】 【扩展信息:用FlashMX制作新年贺卡】 从flash 5的时候,我就一直在抱怨为什么enterframe的速度这么固定还这么慢?为什么对于key对象我还必须去手动建立一个movieclip来接收事件并触发它?为什么我不能及时准确地接受到我需要的信息呢?亿万个为什么总是关于速度与效率的话题,终于flash mx带来的一个新概念让我得到满足,那就是listener——及时监听对象. 说起这个对象,其实在很多c语言程序中并不是什么新概念,它主要是作为测试环境中的消息接受器或者是改进程序的效率而存在的,但在flash mx是第一次出现,也是恰到好处地出现. listener对象需要包含调用目标所需要的事件集合,事件集合内可以定义对事件的处理程序,目标函数如果需要listener对象,必须支持加入listener的方法.在flash mx中支持listener的对象有六种:fstyleformat.key.mouse.selection.stage与textfield,通过addlistener支持listener. key: 在key对象中的listener可以获取onkeydown与onkeyup时间(当然,也没别的事件可以获取……),一个获取键盘按下与放开的事件监听: lsn = new object(); lsn.onkeydown = function () {trace("down") }; lsn.onkeyup = function () {trace("up") }; key.addlistener(lsn); 定义listener的过程很简单,毕竟其本身既是一个对象,并且内部只需要响应事件的集合即可,最后通过支持listener的方法来得到事件入口并开始触发响应. mouse: mouse可以给listener获取的是onmousedown.onmousemove.onmouseup事件,一个获取鼠标事件的例子: createemptymovieclip("mc", 1); lsn2 = new object(); ... 下一页