解析Flex事件机制中触发方法和注册通道

开发 后端
本文向大家介绍一下Flex事件机制中Flex事件注册通道和触发方法,Flex事件可以看作是一种触发机制,当满足了一定的条件后,会触发这个Flex事件。

在学习Flex的过程中,你对Flex事件机制的概念是否了解,这里和大家分享一下,很多控件中都有clickFlex事件,这个Flex事件就是一个MouseEvent的实例,当点击鼠标后,系统会自动抛出一个名称为click的MouseEventFlex事件。

Flex事件机制介绍

1.什么是Flex事件机制

Flex事件可以看作是一种触发机制,当满足了一定的条件后,会触发这个Flex事件。比如MouseEvent就是指的当鼠标进行操作之后触发的一系列的Flex事件。很多控件中都有clickFlex事件,这个Flex事件就是一个MouseEvent的实例,当点击鼠标后,系统会自动抛出一个名称为click的MouseEventFlex事件(这种方法我们将在后面介绍到)。如果此时在click上注册一个方法,那么触发该Flex事件时就会执行这个方法。

在我们写代码时,编辑器的代码补全提示列表中,有很多不同的图标。那些带有闪电的就是Flex事件,三个小块的就是样式,空心圆圈的是属性,实心圆点的是公有方法,还有一个是效果。

我们能在这个列表中看到的Flex事件,我把它称之为Flex事件注册通道。(官方仍然称它为Flex事件,但是它又和普通的Flex事件含义不同。关于Flex事件注册通道会再下面讲述到)

2.Flex事件机制中Flex事件注册通道

上面说到了,这些通道是只能在mxml的代码提示中可以看到的,他的作用就是给mxml组件提供Flex事件触发时所执行的方法的注册通道,而且能在代码提示中可见,这样给组件提供了很大的抽象的好处,我们可以很清楚的告诉组件的使用者,组件里包含哪些Flex事件给你调用。
为什么把他区别对待?除了代码提示外,他还有一些实现上的不同。

Button的clickFlex事件是继承自核心类InteractiveObject,遗憾我们看不到他的源码,但是说明了“Flex事件注册通道”是可以继承的。

我们会在自定义Flex事件中讲述到如何声明“Flex事件注册通道”。

3.Flex事件机制中Flex事件触发方法

注册通道中如果填入了函数,那么就代表触发该Flex事件时,会执行这个方法。

click="clickHandler(event)"

我们看到这个方法有一个event对象作为参数传入,新人可能会问到,这个event对象哪里来的?我也没声明这个变量啊。他实际上是注册通道传给他的,默认变量名就是event。我们如果想在Flex事件触发时传其他的参数,可以通过自定的Flex事件对象来实现。

这个对象就是这个组件分发的Flex事件对象,即type为“click”的MouseEvent的一个实例。

这个event对象包含了触发该Flex事件时的各种信息,比如触发Flex事件对象是哪个,监听对象是哪个,触发时鼠标点在哪里等等,不同的event类会包含不同的属性,比如KeyboardEvent包含了键盘点击了哪个键。

我们也可以通过自定义一个Flex事件类,来传递我们自己想要的各种信息。

【编辑推荐】

  1. 专家答疑 什么是Flex事件机制
  2. Flex事件机制中监听器注册方式
  3. 全面认识Flex应用程序的六大元素
  4. 揭开Flex正则表达式的神秘面纱
  5. Flex数据绑定及其使用频繁的几种情况 
责任编辑:佚名 来源: csdn.net
相关推荐

2010-08-06 09:56:06

Flex事件机制

2010-08-06 10:03:42

Flex事件

2010-08-09 09:47:34

Flex事件机制

2010-08-09 11:06:01

Flex事件机制

2010-08-12 13:59:37

FlexList控件

2010-08-04 14:02:08

Flex事件机制

2010-08-06 09:45:50

Flex事件机制

2010-08-12 15:35:44

Flex事件机制

2010-08-04 13:52:53

Flex事件机制

2010-08-04 14:07:59

Flex事件机制

2010-07-29 10:33:59

Flex键盘事件

2010-08-04 13:23:29

Flex事件

2010-08-13 14:19:44

Flex绑定机制

2010-08-09 11:14:36

Flex事件处理

2010-08-13 13:56:02

Flex事件机制

2017-02-21 12:20:20

Android事件分发机制实例解析

2010-08-02 10:18:06

Flex3教程

2010-07-29 10:40:12

2013-04-24 11:15:56

Android开发Touch事件传递机制

2010-07-29 14:58:49

Flex全屏模式
点赞
收藏

51CTO技术栈公众号