`
liyiye
  • 浏览: 425390 次
  • 性别: Icon_minigender_1
  • 来自: 广州
社区版块
存档分类
最新评论

Flex的事件机制_事件架构

    博客分类:
  • flex
阅读更多

 关于事件
事件有大有小,简单或者复杂,但都有一个共同点特点:派发一个信号,然后等待程序来处理。
事件是交互性程序实现数据驱动的主要运作方式。
事件机制:将程序主体功能细化的有力工具,为各个功能块之间的通信提供桥梁,最大程度地保证程序的各个部分协调运行。
所有组件都会派生自己的事件,为组件指定了相应的事件侦听方法,一旦事件发生,监听方法就被调用。
每个组件可以注册多个监听,可以由多方共同处理同一事件。派发的事件包含了目标对象传递的信息,监听收到信息进行分析,然后处理。
AS3.0 的事件机制基于DOM(Document Object Model)3事件模型:DOM3标准的一部分,有W3C 维护和发展。


 和以往事件机制的区别
AS1.0 和 2.0有多种事件处理方式。on、onClipEvent、回调方式、事件对象监听方式、事件监听方式。

AS 3.0的事件机制采用单一方式,全部采用 addEventListener 方法来注册监听器,且监听器必须是函数,监听器的作用域和监听器所在对象的作用域一致。


 AS3.0 的可视化对象架构和事件机制
AS 3.0 所有可视化对象已经内建了事件机制:

EventDispatcher 和 IEventDispatcher 是 Flash Player 内建的功能对象,负责实现事件模型,它们同属于flash.events 包(包含了 Flash Player 的所有系统事件)。
IEventDispatcher :定义了一个事件模型应该具备的基本方法:派发事件和注册监听器的接口。
EventDispatcher :IEventDispatcher的一个具体实现,提供了3个关键点函数来运作事件机制:
addEventListener():注册事件监听器
removeEventListener():移除事件监听器
dispatchEvent():派发事件

为了让视觉元素独立出来,首先创建了 DisplayObject 这个抽象类,将所有可以显示的对象包括进来,然后按照功能将DisplayObject 再分成7大类:
AVM1Movie:AS3.0之前的SWF文件或MC,使用AVM1来解释执行。主要用来加载早期的SWF
Bimap:位图对象,可以通过代码创建,也可以从外部载入
InteractiveObject:可以接受用户交互的对象,抽象类,无法通过代码创建
DisplayObjectContainer:抽象的可视化对象容器,和容器类控件相似,可以添加其他可视化对象:
Loader:加载所有的外部数据
Sprite:场景,位于显示层的顶部,包括程序中所有的可视元素
MovieClip:扩展了Sprite,依然和早期的MC一样,功能最多最庞杂
Stage:AS 3.0可视化元素中最重要的一个,专门用来处理代码的部件
SimpleButton:处理按钮的对象
TextField:处理动态文本
MorphShape:形变图形,在Flash 创建形变动画时,Flash Player 自动生成,不可以通过代码生成
Shape:形状元件,可以使用AS创建,通过绘图函数来绘制图形
StaticText:在Flash 中使用静态文本时会自动创建,不可通过代码创建
Video:视频对象,专门用来播放来自文件或网络的视频,可以由程序创建

分享到:
评论

相关推荐

    flex_study_pdf

    8. **应用架构**:Flex 3支持多种应用程序架构,如Model-View-Controller(MVC)、Command模式等。资料可能探讨了如何组织代码以实现可维护性和可扩展性。 9. **高级主题**:高级话题可能包括性能优化、国际化和...

    UserInfoSys.rar_flex_flex strut_flex struts _flex struts2 list_s

    其Action机制与Flex进行交互,接收并处理来自前端的请求,执行相应的业务逻辑,并将结果以JSON或AMF格式回传给Flex,实现前后端的数据同步。 在Flex与Struts2的集成过程中,通常会采用AMF(Action Message Format)...

    FSH.rar_flex_flex hibernate_flex4_flex4.5_spring3 flex4.5

    此项目实例的亮点在于,它不仅展示了Flex 4.5的UI设计和事件处理能力,还体现了Spring 3的服务化架构和Hibernate的数据库操作功能。开发者可以通过这个实例学习如何在Flex中集成Spring和Hibernate,实现前后端的无缝...

    Flex_4.0_RIA开发详解讲义.rar

    1. **Flex 4.0简介**:Flex 4.0,又称为Gumbo,是Flex框架的重大更新,引入了全新的Spark组件架构和Skinning与Styling机制,增强了灵活性和可定制性。 2. **Spark组件**:Spark组件是Flex 4.0的核心,替代了原有的...

    Flex_4.0_RIA开发详解.rar

    它还可能涵盖Flex中的事件处理机制,错误处理,以及性能优化技巧。 总的来说,这个压缩包提供的资源对于想要深入理解Flex 4.0 RIA开发的开发者来说是一份宝贵的参考资料,无论是初学者还是有经验的Flex开发者,都...

    flash_flex.rar_flex

    10. ** Cairngorm、PureMVC、Swiz等框架**:这些是用于Flex应用的MVC架构的流行框架,它们帮助组织代码并促进可维护性。 11. **Display List**:AS3中的显示列表管理所有可视元素,理解其层次关系和渲染顺序对布局...

    Flex_API的架构图

    总的来说,Flex API的架构图揭示了一个完整的开发框架,涵盖了界面设计、数据交互、事件处理和用户体验优化等多个方面,为开发高质量的RIA应用提供了全面的工具和接口。通过深入理解和熟练运用Flex API,开发者能够...

    foundation_flex_for_developers

    它具有强大的类型系统、高效的内存管理机制和丰富的类库,使得开发者能够轻松地创建高性能的Flex应用程序。 **开发环境搭建与配置**:为了高效地进行Flex开发,需要搭建一个合适的开发环境。这通常包括安装Flex SDK...

    Cairngorm-Flex.zip_Cairngorm_flex

    而Cairngorm的引入则进一步强化了Flex的架构设计能力,使得开发者能够遵循软件工程的最佳实践,提高代码质量。 Cairngorm框架的主要组成部分包括: 1. **模型(Model)**:负责存储和管理应用程序的数据。通常,...

    flex_component_kit_042307

    通过这种方式,开发者可以充分利用Flex的强大多层架构和数据绑定机制,将Flash组件无缝融入到复杂的Flex应用程序中。 总结来说,Flex Component Kit 042307是一个强大的工具,它消除了Flash与Flex之间的技术壁垒,...

    Flex_4.0_RIA开发详解.pdf

    Flex 4的开发环境已从FlexBuilder更名为了FlashBuilder,采用事件驱动机制,程序的执行严格遵循事件发生的时间顺序。 1.1.1 Flex的技术特点 Flex的主要技术特点包括: - 能够在企业内部或Web上创建RIA; - 提供了一...

    flex_4.6_accessingdata-zh_CN_中文文档

    这种动态数据绑定机制是Flex相对于传统Web技术的一大优势。 #### 二、使用Flash Builder构建数据驱动的应用程序 **创建Flex项目以访问数据服务** Flash Builder是Adobe提供的一款集成开发环境(IDE),专为Flex和...

    flex_4.6_help.pdf

    根据提供的文件信息“flex_4.6_help.pdf”,我们可以从中提炼出Adobe Flex 4.6这一版本的关键知识点,包括但不限于其开发工具、应用架构、用户界面构建、数据驱动UI组件的使用以及增强用户体验等方面。 ### Adobe ...

    flex_src.rar_flex_城市联动_应急_应急 系统

    《城市应急联动系统基于Flex的实现详解》...通过深入研究压缩包中的源代码,开发者不仅可以掌握Flex的使用技巧,也能进一步理解城市应急系统的架构和运作原理。这对于提升城市应急处理能力,保障公共安全具有重要意义。

    xyzp_flex_flex+java的档案管理系统_Flex+Java_XYZP_

    总结来说,XYZP档案管理系统是Flex和Java技术的完美融合,它将前沿的前端技术和稳定的后端架构相结合,为企业提供了高效、安全的档案管理解决方案。无论是对于日常的文档操作,还是对于复杂的工作流程,XYZP都能够...

    Flex__as__面试题.doc

    【Flex AS面试题】 在Flex开发中,ActionScript(AS)是主要的编程语言,而AS2和AS3是两个重要的版本。AS2与AS3的主要区别在于它们的基础架构和...通过合理的架构设计和工具使用,可以提高Flex应用的效率和用户体验。

    Flex_4.0_RIA开发详解讲义

    - **标准的架构**:遵循开放标准,如W3C的CSS和ECMAScript,确保代码的可维护性和扩展性。 1.1.1 Flex 4.0 新特性 - **新增主题和组件**:引入新的皮肤和组件库,增强了设计灵活性。 - **增强布局方式**:提供了更...

    Flex中文帮助_all.pdf

    从给定的文件信息中,我们可以提取出关于Adobe Flex的关键知识点,主要集中在Flex的工作机制、构建和运行Flex应用程序的步骤、以及Flex应用程序的组成元素。 ### Flex工作机制 Flex是一个架构,旨在提供开发和运行...

    flex_tree扩展_时间轴

    1. **Flex组件架构**:理解Flex的组件体系,包括MXML和ActionScript的混合编程模型,以及组件生命周期。 2. **自定义组件**:学习如何通过继承Flex的现有组件(如Tree或Timeline)并覆盖其方法来创建自定义组件。 ...

Global site tag (gtag.js) - Google Analytics