精通Flex 3.0――4.8.3 Event Listeners事件监听
2008-04-28 15:01
197 查看
Event Listeners(事件监听)就是Flash Player利用一些functions(函数)来响应指定事件的处理。添加一个Event Listener需要两步过程。
(1)为Flash Player创建一个函数或者类的方法来执行对事件的响应。
(2)通过addEventListener()方法为目标对象注册监听方法。
事件监听函数可以定义在类的外部,也可以定义在内的内部。定义在类的内部可以看做类的一个方法来使用。
当监听函数定义在类外部,代码如下。
package com.topi.AS
{
import flash.display.Sprite;
import flash.events.MouseEvent;
public class mySprite extends Sprite
{
public function mySprite(){
graphics.beginFill(0xFFFF00);
//开始填充
graphics.drawRect(0,0,100,100);
//画矩形位置及其大小
graphics.endFill();
//填充结束
addEventListener(MouseEvent.CLICK, showEventMessage);
//注册监听方法
}
}
}
import flash.events.MouseEvent;
//创建监听函数
function showEventMessage(event:MouseEvent):void{
trace("事件类型"+event.type);
trace("函数作用范围"+this);
}
以上代码在调试模式下运行,通过控制台查看以下结果。
事件类型:-----click
函数作用范围:------[object global]
通过以上输出的调试信息,可以看到函数showEventMessage()可以处理的事件类型为click。而函数showEventMessage()被作为了一个全局的对象来调用。
当监听函数定义在类内部,代码如下。
package com.topi.AS
{
import flash.display.Sprite;
import flash.events.MouseEvent;
public class mySprite extends Sprite
{
public function mySprite(){
graphics.beginFill(0xFFFF00);
//开始填充
graphics.drawRect(0,0,100,100);
//画矩形位置及其大小
graphics.endFill();
//填充结束
addEventListener(MouseEvent.CLICK, showEventMessage);
//注册监听方法
}
//定义此类的一个内部方法
private function showEventMessage(event:MouseEvent):void{
trace("事件类型:-----"+event.type);
trace("函数作用范围:------"+this);
}
}
}
以上代码在调试模式下运行,通过控制台看见以下结果:
事件类型:-----click
函数作用范围:------[object mySprite]
通过以上输出的调试信息,可以看到函数showEventMessage()可以处理的事件类型为click。而这个时候函数showEventMessage()被作为了mySprite对象的一个内部方法来调用。
(1)为Flash Player创建一个函数或者类的方法来执行对事件的响应。
(2)通过addEventListener()方法为目标对象注册监听方法。
事件监听函数可以定义在类的外部,也可以定义在内的内部。定义在类的内部可以看做类的一个方法来使用。
当监听函数定义在类外部,代码如下。
package com.topi.AS
{
import flash.display.Sprite;
import flash.events.MouseEvent;
public class mySprite extends Sprite
{
public function mySprite(){
graphics.beginFill(0xFFFF00);
//开始填充
graphics.drawRect(0,0,100,100);
//画矩形位置及其大小
graphics.endFill();
//填充结束
addEventListener(MouseEvent.CLICK, showEventMessage);
//注册监听方法
}
}
}
import flash.events.MouseEvent;
//创建监听函数
function showEventMessage(event:MouseEvent):void{
trace("事件类型"+event.type);
trace("函数作用范围"+this);
}
以上代码在调试模式下运行,通过控制台查看以下结果。
事件类型:-----click
函数作用范围:------[object global]
通过以上输出的调试信息,可以看到函数showEventMessage()可以处理的事件类型为click。而函数showEventMessage()被作为了一个全局的对象来调用。
当监听函数定义在类内部,代码如下。
package com.topi.AS
{
import flash.display.Sprite;
import flash.events.MouseEvent;
public class mySprite extends Sprite
{
public function mySprite(){
graphics.beginFill(0xFFFF00);
//开始填充
graphics.drawRect(0,0,100,100);
//画矩形位置及其大小
graphics.endFill();
//填充结束
addEventListener(MouseEvent.CLICK, showEventMessage);
//注册监听方法
}
//定义此类的一个内部方法
private function showEventMessage(event:MouseEvent):void{
trace("事件类型:-----"+event.type);
trace("函数作用范围:------"+this);
}
}
}
以上代码在调试模式下运行,通过控制台看见以下结果:
事件类型:-----click
函数作用范围:------[object mySprite]
通过以上输出的调试信息,可以看到函数showEventMessage()可以处理的事件类型为click。而这个时候函数showEventMessage()被作为了mySprite对象的一个内部方法来调用。
相关文章推荐
- 精通Flex 3.0――4.8.4 事件监听管理
- 精通Flex 3.0――4.8 使用事件处理类
- Flex(AS 3.0)实现快捷键功能--监听键盘事件
- 精通Flex 3.0――4.8.1 EventObjects事件对象
- cocos2d-js 3.0 RC0 监听返回键、菜单键、进入后台(home键)、恢复显示等事件
- cocos2d-x 3.0 事件分发机制 —触摸事件监听
- 精通Flex 3.0——4.5.5 Array的排序
- 精通Flex 3.0――4.6.7 XML的类型转换
- 精通Flex 3.0――第14章 使用LCDS与服务端通信
- 精通Flex 3.0――14.3.1 Remoting服务介绍
- 精通Flex 3.0――14.5.5 建立一个Message服务的Flex应用
- 精通Flex 3.0――4.1.2 核心显示类
- 精通Flex 3.0――4.2.3 动态添加按钮——SimpleButton类
- 精通Flex 3.0――4.3 文本类String
- 精通Flex 3.0――4.3.8 其他对象转换为String
- Flex之旅:第一部分:flex必备基础知识积累(1)---监听键盘事件的注意事项
- Flex编程注意之自动获取焦点、监听全局键盘事件
- 精通Flex 3.0——4.6 使用操作XML相关的类
- 精通Flex 3.0――4.7 ActionScript 3.0网络编程
- 精通Flex 3.0――14.1 LCDS介绍