`
mujinglanqq1
  • 浏览: 2605 次
  • 性别: Icon_minigender_2
  • 来自: 北京
最近访客 更多访客>>
社区版块
存档分类
最新评论

flex自定义事件

阅读更多
看flex自定义事件好久了,有一些体会,现在写一些总结,如果有大侠看到,不对的地方希望指正。
flex自定义事件有三个部分:注册、派发,监听。
现在就以我做过的项目代码做总结
前提是这样的,有两个模块:课程模块和课程详细模块,为了松耦合,两个模块间不能互相调用。
现在有一个问题,在课程模块点击了课程列表中的一节课时,要把课程id从课程模块传到课程详细模块。
解决办法就是写一个自定义事件。

public class CourseDetailConEvent extends Event
{
/**
* 课程名称
* */
public var courseName:String;

/**
*课程Id
* */
public var courseId:int;

public function CourseDetailConEvent(type:String,bubbles:Boolean=false, cancelable:Boolean=false)
   {
super(type, bubbles, cancelable);
   }
}

自定义事件写好了

[Event(name="courseDetailCon", type="com.etmr.mcwss.commons.event.CourseDetailConEvent")]//注册
public class MainApp extends EventDispatcher
{
/**
* 给课程详细赋值课程Id和Name
*
* */
public function courseDetailCon(courseId:int):void{

    var event:CourseDetailConEvent = new CourseDetailConEven("courseDetailCon");
    event.courseId = courseId;

    mainApp.dispatchEvent(event);//派发自定义事件  }
}

监听部分
public function FrameClass()
{
super();

mainApp.addEventListener("courseDetailCon",courseDetailConHandler);
}

/**
* 给课程详细赋值课程Id和名称事件
*/
public function courseDetailConHandler(event:CourseDetailConEvent):void{
courseDetail.init(event.courseId);
}
}

然后只要点击课程列表中一节点课时,课程id就从课程模块传到了课程详细模块

触发事件的地方
public class CourseClass extends SkinnableContainer
{
/**
* 课程的modelLocator
*/
private var modelLocator:ModelLocator = ModelLocator.getInstance();

/**
* 课程的Model信息
*/
[Bindable]
public var model:Model = modelLocator.model;

/**
* MainApp
*/
private var mainApp:MainApp = MainApp.mainApp;


/**
* List点击事件
*/
protected function courseList_changeHandler(event:IndexChangeEvent):void
{
// TODO Auto-generated method stub
var courseObj:Object = model.courseCollection.getItemAt(event.newIndex);
var courseId:int = parseInt(courseObj["courseId"]);

mainApp.courseDetailCon(courseId);

}
  }
  • 大小: 53.3 KB
  • 大小: 55.2 KB
  • 大小: 49.5 KB
  • 大小: 24.5 KB
分享到:
评论

相关推荐

    flex自定义事件、简单例子说明

    ### Flex自定义事件详解 Flex 是一款用于构建和部署跨平台桌面应用与移动应用的开源框架,它基于Adobe Flash Platform。在Flex应用开发过程中,事件处理机制是非常重要的一个环节,而自定义事件则是这一机制中的...

    Flex自定义组件和事件

    ### 二、Flex自定义事件 #### 1. 为什么需要自定义事件 Flex的内置事件(如 MouseEvent 和 Event)可能不足以满足所有交互需求。自定义事件允许开发者创建具有特定含义和数据的事件,以更好地匹配应用的业务逻辑。...

    flex4自定义事件用法

    自定义事件是Flex开发中的一个重要概念,允许开发者扩展内置事件系统,以满足特定项目的需要。下面将详细介绍Flex4自定义事件的用法,以及如何在一个完整的项目中导入和运行。 1. **创建自定义事件类** - 首先,...

    flex自定义组件事件DEMO

    4. 示例学习:在"flex自定义组件事件DEMO"中,你可以看到如何在自定义组件中创建并派发自定义事件,以及如何在其他地方监听和响应这些事件。通过分析代码,可以了解事件生命周期、事件冒泡和捕获的概念,以及如何在...

    flex 自定义控件、事件

    这个主题聚焦于“flex自定义控件与事件”,这是一个关键的开发概念,特别是对于那些希望深入理解Flex架构和提升应用用户体验的开发者来说。 自定义控件在Flex开发中扮演着重要角色,它们允许开发者根据项目需求创建...

    Flex 自定义组件ImageViewer

    在Flex中,自定义组件是开发者根据项目需求创建的特殊UI元素,可以扩展和定制标准的MX或Spark组件。本示例着重于一个名为“ImageViewer”的自定义组件,这通常是一个用于展示图像并可能包含缩放、平移等交互功能的...

    flex 自定义组件

    Flex自定义组件是Adobe Flex框架中的一个重要特性,它允许开发者创建具有特定功能和外观的UI元素,以满足项目中独特的用户界面需求。Flex是一个开源的、基于MXML和ActionScript的开发框架,主要用于构建富互联网应用...

    Flex 自定义ToolTip

    ### Flex自定义ToolTip详解 在Flex开发中,`ToolTip`是一种非常实用的界面元素,用于在用户悬停或聚焦某个控件时显示额外的信息。默认情况下,Flex提供了基本的`ToolTip`功能,但有时为了满足特定的设计需求或者...

    Flex自定义加载条(小起)

    在本文中,我们将深入探讨如何在Flex...总结来说,自定义Flex加载条是一项涉及组件样式、模板、动画和事件处理的综合工作。通过学习和实践这个示例,你可以掌握如何根据项目需求定制出独特的加载条组件,提升用户体验。

    flex自定义树形结构

    本篇文章将深入探讨如何在Flex环境中自定义实现一个具备展开、收缩功能的多级目录树形结构。 首先,让我们理解`Flex`布局。Flex布局,全称为Flexible Box,是一种用于容器中元素的布局模型,旨在提供更好的灵活性,...

    各种Flex自定义组件

    在标题“各种Flex自定义组件”中,我们可以推断这是一个包含多种定制Flex组件的资源集合。这些组件可能包括时间选择器、数据网格(datagrid)、树形视图(tree)和下拉组合框(combox)。每个组件都有其特定的用途和...

    Flex 自定义 时间 日历 控件

    Flex 自定义 时间 日历 控件

    flex 自定义进度条

    标题提到的"flex 自定义进度条",指的是利用Flex布局技术来设计一个可定制的进度条组件。Flex布局,全称为Flexible Box布局,是一种在CSS3中引入的布局模型,旨在提供更灵活的盒状模型布局方式,尤其适合在不同屏幕...

    flex自定义组件介绍

    标题中的“flex自定义组件介绍”指的是在Adobe Flex框架中创建和使用自定义组件的过程。Flex是一个基于ActionScript和MXML的开源框架,用于构建富互联网应用程序(RIA)。自定义组件允许开发者根据特定需求扩展Flex...

    FLEX自定义等待图标资源

    综上所述,FLEX自定义等待图标资源为开发者提供了丰富的选项,帮助他们提升应用程序的用户体验。通过灵活地使用SWF和GIF资源,开发者可以创造出与应用风格相符且用户体验优良的等待动画。同时,理解和掌握如何在FLEX...

    Flex 自定义公共包

    Flex 自定义公共包,可以在项目里直接使用

    Flex自定义编辑项目

    Flex自定义编辑项目是一种基于Adobe Flex技术的开发工具,它为用户提供了一种类似于Flash IDE的交互体验。这个项目的核心特点是其高度的可定制性,允许开发者进行多种视觉元素的编辑操作,如拖拽、放大、缩小、添加...

    ActionScript的自定义组件及自定义事件例子

    总的来说,掌握ActionScript的自定义组件和自定义事件是提升Flash和Flex开发技能的重要一步。通过实践和研究“WinCCALLMine”中的示例,你可以更好地理解这些概念,并将其应用到你的项目中,从而创造出独特且功能...

    flex 高级自定义组件

    Flex中的高级自定义组件开发是构建复杂用户界面的关键技术,它允许开发者超越基本组件的限制,以满足特定的业务需求和视觉设计。在创建高级组件时,了解并掌握一些核心方法的重写至关重要,这些方法涉及到组件的生命...

    flex自定义文本编辑器

    "flex自定义文本编辑器"是一个这样的示例,它展示了如何利用Flex4框架构建一个具备特定功能的文本编辑工具,同时集成了自定义的拾色器功能。下面我们将详细探讨这个项目的相关知识点。 首先,我们关注的是`Text...

Global site tag (gtag.js) - Google Analytics