Flex事件机制基础(一)
很多开发人员都知道如何使用事件机制,但却不理解事件机制的基本工作原理。在这里我们探讨一下ActionScript 3的事件机制(无论是新手还是老手,我相信看到最后肯定对你有所帮助 )。
1. 首先来看一下事件机制中的几个基本概念:
event objects(这里我们姑且叫它事件对象):所有的事件对象都是flash.events.Event或者其子类。比如说鼠标事件MouseEvent,计时器事件TimerEvent。每个事件对象中都包括事件类型(type)和事件源(target),便于event listener知道该事件的类型以及是谁抛出这样的事件。
event dispatchers(姑且叫它事件源):是事件发起的主体。所有的dispatcher都是EventDispatcher或其子类。事件触发源必须提供API让listener进行对该事件的注册(register)。
event listeners(姑且叫它事件监听器):在AS 3.0中它往往表现为一个函数。我们必须为每个特殊的事件和事件源注册一个监听器,当事件发生的时候,事件源(dispatcher)会通知该监听器去处理制定的事件。
2. 如何注册监听器(registering Listener)
在AS 3.0中可以通过下面的语法格式进行注册。
dispatcher.addEventListener(eventName, listener);
当然在Flex中还有另外一种格式,在mxml文件中对一个控件的事件直接制定一个处理函数,如
<mx:Button label="TestClick" click="clickHandler()"/>
3. 如何删除监听器(removing Listener)
在AS 3.0中以下面的格式进行删除
circle.removeEventListener(MouseEvent.CLICK, onClick);
应该很容易理解。
但这里确有一点很重要:尽量删除你已经不再使用的事件监听器,这个涉及到Flex 内存泄漏的问题,以后会有详细介绍。
转自:http://wmcai.blog.163.com/blog/static/48024200782442026437/
相关文档:
<?xml version="1.0"?>
<!-- Simple example to demonstrate the ColumnChart and BarChart controls. -->
<mx:Application xmlns:mx="http://www.adobe.com/2006/mxml"
creationComplete="initApp()"
backgroundColor="#FFFFFF" width="350" height="125"
layout="absolute">
<!- ......
今天在修改一个游戏bug问题的时候遇到的
这游戏本来是中文版的,后来被翻译成英文了,英文的字符串的长度一般都会比中文的字符多的,所以很多情况下要加滚动条了
今天又有个显示文字不全的,原本用的是text标签的那个不能显示滚动条所以用textarea替换掉了,可是竟然没有反应不显示滚动条
郁闷!!!!
我添加了 ......
首先建一个netbeans的java web项目
然后从网上吧blazeds.war 下载下来用rar 解压 把web-inf 替换掉在netbeans\web 下面的web-inf中的全部文件
然后 部署下
在打开flex builder 新建一个flex project 写上名字和项目路径
在Application server type 选中j2ee
点击 下一步
然后 Root folder选中net ......
一般来讲,在windows上安装软件从来都不是什么难事儿,但FMS却在安装过程中"充满"了误导(好吧,其实也就是夸张的说法而已)
1.下载FMS3.5
http://www.adobe.com/products/flashmediainteractive/?promoid=DJDTG
这上面有一个免费开发版(除了连接数有限制,其它功能完全一样)
2.一路Next安装
注 ......