flex自定义组件和自定义事件

2024-09-02 12:58
文章标签 自定义 组件 事件 flex

本文主要是介绍flex自定义组件和自定义事件,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

看了一个帖子,自己写了一下。主要讲了自定义组件跟自定义事件。

先看一下自定义事件。就跟在殿堂之路中写道一样。代码如生活,理解代码就如理解生活一样一样的。

什么是事件,事件是怎么运作的呢?我是这样理解的:

比如去了一家餐馆就餐,首先要制定服务员:我要求穿白裙子的那个美女为我服务(端茶倒水,上菜);所以我落座后,说的话,都是穿白裙子妹妹,暂且叫,白美美。

这里指定服务员就比如在程序里注册事件监听器。mine.addEventListener( "点菜","白美美")。意思是如果mine发出“点菜” 的事件,“白美美”要去做。(注意,是如果,现在还没有发生这件事情,所以白美美什么事情也不会做。)假如 顾客类是 Customer, 则mine是Customer的一个实例。是顾客的一个实例如果发出点菜请求,则白美美要去做了。

顾客发出事件是:dispatchEvent(new Event);这时候就会触发白美美为我们服务。

这里自定义一个自己的类。MyEvent.as

继承 Event。如下:

package classEvent
{import flash.events.Event;import flash.text.ReturnKeyLabel;public class MyEvent extends Event{public static const  PREVIEW:String="提交";public var _data:String;public function MyEvent(type:String, bubbles:Boolean=false, cancelable:Boolean=false){super(type, bubbles, cancelable);}public function get data():String{return _data;}public function set data(data:String):void{_data=data;}}
}

自定义了一个类 ,这个事件是“提交”事件。(谁注册事件,谁发出事件)。当发出的时间跟注册的事件一样的时候,这时候侦听器才会执行。下面自定义一个组件,组件发出该事件。(在主应用程序里提前注册该事件)。发出事件后,该组件在主应用程序里早已经在那注册了,一旦事件发生后,监听器就会执行。

<?xml version="1.0" encoding="utf-8"?>
<mx:Canvas xmlns:fx="http://ns.adobe.com/mxml/2009" xmlns:s="library://ns.adobe.com/flex/spark" xmlns:mx="library://ns.adobe.com/flex/mx" width="400" height="300"><fx:Declarations><!-- 将非可视元素(例如服务、值对象)放在此处 --></fx:Declarations><fx:Script><![CDATA[import classEvent.MyEvent;private function previewHanler(evt:MouseEvent):void{dispatchEvent(new MyEvent(MyEvent.PREVIEW));}]]></fx:Script><s:Button x="121" y="47" label="按钮"  click="previewHanler(event)"/></mx:Canvas>

然后把在组件拖到主应用程序中。

<?xml version="1.0" encoding="utf-8"?>
<s:WindowedApplication xmlns:fx="http://ns.adobe.com/mxml/2009"xmlns:s="library://ns.adobe.com/flex/spark"xmlns:mx="library://ns.adobe.com/flex/mx"xmlns:myComponent="myComponent.*"creationComplete="initApp()"><fx:Declarations><!-- 将非可视元素(例如服务、值对象)放在此处 --></fx:Declarations><fx:Script><![CDATA[import classEvent.MyEvent;import mx.controls.Alert;private function initApp():void{mycomponet.addEventListener(MyEvent.PREVIEW, previewHandler);}private function previewHandler(e:MyEvent):void{/* Alert.show("hello preview"); */textpr.text="hello preview";}]]></fx:Script><myComponent:MyComp id="mycomponet" x="113" y="93"></myComponent:MyComp><s:TextArea id="textpr" x="200" y="208"/>
</s:WindowedApplication>


这篇关于flex自定义组件和自定义事件的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/1130024

相关文章

Java实现自定义table宽高的示例代码

《Java实现自定义table宽高的示例代码》在桌面应用、管理系统乃至报表工具中,表格(JTable)作为最常用的数据展示组件,不仅承载对数据的增删改查,还需要配合布局与视觉需求,而JavaSwing... 目录一、项目背景详细介绍二、项目需求详细介绍三、相关技术详细介绍四、实现思路详细介绍五、完整实现代码

一文详解Java Stream的sorted自定义排序

《一文详解JavaStream的sorted自定义排序》Javastream中的sorted方法是用于对流中的元素进行排序的方法,它可以接受一个comparator参数,用于指定排序规则,sorte... 目录一、sorted 操作的基础原理二、自定义排序的实现方式1. Comparator 接口的 Lam

如何自定义一个log适配器starter

《如何自定义一个log适配器starter》:本文主要介绍如何自定义一个log适配器starter的问题,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录需求Starter 项目目录结构pom.XML 配置LogInitializer实现MDCInterceptor

Spring组件实例化扩展点之InstantiationAwareBeanPostProcessor使用场景解析

《Spring组件实例化扩展点之InstantiationAwareBeanPostProcessor使用场景解析》InstantiationAwareBeanPostProcessor是Spring... 目录一、什么是InstantiationAwareBeanPostProcessor?二、核心方法解

Druid连接池实现自定义数据库密码加解密功能

《Druid连接池实现自定义数据库密码加解密功能》在现代应用开发中,数据安全是至关重要的,本文将介绍如何在​​Druid​​连接池中实现自定义的数据库密码加解密功能,有需要的小伙伴可以参考一下... 目录1. 环境准备2. 密码加密算法的选择3. 自定义 ​​DruidDataSource​​ 的密码解密3

C++ RabbitMq消息队列组件详解

《C++RabbitMq消息队列组件详解》:本文主要介绍C++RabbitMq消息队列组件的相关知识,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友参考下吧... 目录1. RabbitMq介绍2. 安装RabbitMQ3. 安装 RabbitMQ 的 C++客户端库4. A

spring-gateway filters添加自定义过滤器实现流程分析(可插拔)

《spring-gatewayfilters添加自定义过滤器实现流程分析(可插拔)》:本文主要介绍spring-gatewayfilters添加自定义过滤器实现流程分析(可插拔),本文通过实例图... 目录需求背景需求拆解设计流程及作用域逻辑处理代码逻辑需求背景公司要求,通过公司网络代理访问的请求需要做请

PyQt6中QMainWindow组件的使用详解

《PyQt6中QMainWindow组件的使用详解》QMainWindow是PyQt6中用于构建桌面应用程序的基础组件,本文主要介绍了PyQt6中QMainWindow组件的使用,具有一定的参考价值,... 目录1. QMainWindow 组php件概述2. 使用 QMainWindow3. QMainW

Python开发文字版随机事件游戏的项目实例

《Python开发文字版随机事件游戏的项目实例》随机事件游戏是一种通过生成不可预测的事件来增强游戏体验的类型,在这篇博文中,我们将使用Python开发一款文字版随机事件游戏,通过这个项目,读者不仅能够... 目录项目概述2.1 游戏概念2.2 游戏特色2.3 目标玩家群体技术选择与环境准备3.1 开发环境3

Spring Security自定义身份认证的实现方法

《SpringSecurity自定义身份认证的实现方法》:本文主要介绍SpringSecurity自定义身份认证的实现方法,下面对SpringSecurity的这三种自定义身份认证进行详细讲解,... 目录1.内存身份认证(1)创建配置类(2)验证内存身份认证2.JDBC身份认证(1)数据准备 (2)配置依