`

flex自定义事件使用

    博客分类:
  • flex
 
阅读更多

1.创建事件

public class TestEvent extends Event
	{
		//事件类型
		public static const TEST_EVENT:String = "TEST_EVENT";
		//存储事件的附加信息
		public var data:Object;
		public function TestEvent(type:String, bubbles:Boolean=false, cancelable:Boolean=false)
		{
			super(type, bubbles, cancelable);
		}
	}
 

2.注册监听

3.分派事件

4.执行监听

<?xml version="1.0" encoding="utf-8"?>
<s:Application xmlns:fx="http://ns.adobe.com/mxml/2009" 
			   xmlns:s="library://ns.adobe.com/flex/spark" 
			   xmlns:mx="library://ns.adobe.com/flex/mx" minWidth="955" minHeight="600"
			   creationComplete="init()">
	<fx:Declarations>
		<!-- 将非可视元素(例如服务、值对象)放在此处 -->
	</fx:Declarations>
	<fx:Script>
		<![CDATA[
			import com.mydispatcher.TestEventDispatcher;
			import com.myevent.TestEvent;
			//2.注册监听
			private function init():void
			{
				//4.监听到后,就会执行testListener
				addEventListener(TestEvent.TEST_EVENT,testListener);
				//var ted:TestEventDispatcher = new TestEventDispatcher();
			}
			//自己派发的事件,所以在init自己监听就行了
			private function onClick():void
			{
				
				trace("执行了");
				var testEvent:TestEvent = new TestEvent(TestEvent.TEST_EVENT,true);
				//3.派发事件
				dispatchEvent(testEvent);
				trace(testEvent.eventPhase+"=========");
				
			}
			//别人派发的事件,所以需要在别人的对象旬添加监听
			private function onClick2():void
			{
				
				trace("执行了");
				var ted:TestEventDispatcher = new TestEventDispatcher();
				//ted派发事件,所以给在ted上添加监听
				ted.addEventListener(TestEvent.TEST_EVENT,testListener);
				ted.createAndDispathEvent();
				
			}
			
			
			private function testListener(event:TestEvent):void
			{
				trace("我监听到了!");
				trace(event.eventPhase);
			}

		]]>
	</fx:Script>
	<s:Panel width="100%" height="100%" >
		<s:HGroup>
			<s:Button label="点击" click="onClick()"/>
			<s:Button label="点击2" click="onClick2()"/>
		</s:HGroup>
	</s:Panel>
		
	
</s:Application>
 
public class TestEventDispatcher extends EventDispatcher
	{
		public function TestEventDispatcher(target:IEventDispatcher=null)
		{
			super(target);
			//this.addEventListener(TestEvent.TEST_EVENT,onTestEvent);
		}
		//创建并派发事件
		public function createAndDispathEvent():void{
			var testEvent:TestEvent = new TestEvent(TestEvent.TEST_EVENT,true);
			testEvent.data = "这是一个测试事件";
			dispatchEvent(testEvent);
		}
		//事件侦听器
//		public function onTestEvent(event:TestEvent):void{
//			trace(event.data);
//		}
		
	}
 

 

分享到:
评论

相关推荐

    flex4自定义事件用法

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

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

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

    flex自定义组件事件DEMO

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

    flex 自定义控件、事件

    在MXML中,你可以使用`&lt;mx:Metadata&gt;`标签声明自定义事件,然后在代码中使用`dispatchEvent()`方法触发这些事件。 5. **MXML使用**:MXML是一种声明式语言,用于描述Flex界面的布局和组件。在MXML文件中,你可以像...

    Flex自定义组件和事件

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

    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布局,全称为Flexible Box布局,是一种在CSS3中引入的布局模型,旨在提供更灵活的盒状模型布局方式,尤其适合在不同屏幕...

    Flex 自定义 时间 日历 控件

    Flex 自定义 时间 日历 控件

    flex事件flex事件flex事件flex事件

    - **自定义事件**:开发者可以通过`CustomEvent` API创建与Flex布局相关的自定义事件,例如`flexResize`或`flexOrderChange`,来监听布局变化。 - **MutationObserver**:用于监听DOM结构的变化,例如当Flex项目...

    flex自定义组件介绍

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

    FLEX自定义等待图标资源

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

    Flex 自定义公共包

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

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

    3. **派发事件**:在需要触发事件的地方,使用`dispatchEvent()`方法发送自定义事件。 4. **监听事件**:在接收方组件中,使用`addEventListener()`方法添加事件监听器,处理自定义事件。 在提供的“WinCCALLMine”...

    flex 高级自定义组件

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

    Flex自定义编辑项目

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

Global site tag (gtag.js) - Google Analytics