`

v3_03 从自定义组件中派发一个值对象

    博客分类:
  • flex
阅读更多
v3_03 Dispatching a value object from the custom component 从自定义组件中派发一个值对象
 
ex3_03
这部分主要讲了如何提交一个form到主应用程序中,其实主要内容前面已经讲过了
这里主要是对之前内部的串联
 
这部分的起点是MVC那个例子
1.首先建一个请求提交参数的对象
package valueObjects
{
public class VehicleRequest
{
public var id:String;
public var mobilePhone:String;
public var phone:String;
public var pickupDate:String;
public var returnDate:String;
public function VehicleRequest()
{
}
}
} 
  
2.在提交按钮上处理事件,new一个提交对象
<!--WizRtf2Html Charset=0 -->
protected function submitButton_clickHandler(event:MouseEvent):void
{
var vehicleRequestData:VehicleRequest = new VehicleRequest();
vehicleRequestData.id = dropDownList.selectedItem.id;
vehicleRequestData.phone = phone.text;
vehicleRequestData.mobilePhone = mobilePhone.text;
vehicleRequestData.pickupDate = pickupDate.selectedDate.toDateString();
vehicleRequestData.returnDate = returnDate.selectedDate.toDateString(); 


} 
 
 
3.然后扩展一个Event类来将数据传递回主应用程序
步骤同之前例子
扩展Event类
<!--WizRtf2Html Charset=0 -->
package events
{
import flash.events.Event;

import valueObjects.VehicleRequest;

public class VehicleRequestEvent extends Event
{
public var vehicleRequestData:VehicleRequest

public function VehicleRequestEvent(type:String, vehicleRequestData:VehicleRequest)
{
super(type);
this.vehicleRequestData = vehicleRequestData;
}

override public function clone():Event
{
return new VehicleRequestEvent(type, vehicleRequestData);
}
}
} 
 
 
metadata标签中加入Event
<!-- Metadata ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -->
<fx:Metadata>
[Event(name="vehicleRequestEvent", type="events.VehicleRequestEvent")]
</fx:Metadata> 
  
提交事件中new一个事件对象,并赋值
protected function submitButton_clickHandler(event:MouseEvent):void
{
var vehicleRequestData:VehicleRequest = new VehicleRequest();
vehicleRequestData.id = dropDownList.selectedItem.id;
vehicleRequestData.phone = phone.text;
vehicleRequestData.mobilePhone = mobilePhone.text;
vehicleRequestData.pickupDate = pickupDate.selectedDate.toDateString();
vehicleRequestData.returnDate = returnDate.selectedDate.toDateString(); 

var eventObject:VehicleRequestEvent = new VehicleRequestEvent("vehicleRequestEvent",vehicleRequestData);
dispatchEvent(eventObject);

} 
 
 
主应用程序中处理事件
<components:VehicleRequestForm employees="{employees}" 
vehicleRequestEvent="vehiclerequestform1_vehicleRequestEventHandler(event)"/>
  
 
protected function vehiclerequestform1_vehicleRequestEventHandler(event:VehicleRequestEvent):void
{
Alert.show("Your vehicle request has been submitted");
}
 
分享到:
评论

相关推荐

    JAVA程序设计实验

    自定义一个异常类NumberRangeException,当试图进行超范围运算时,产生相应的信息。编写应用程序进行测试。 实验七:图形界面编程 (1) 在窗体上产生一个单文本框和两个命令按纽:“显示”和“清除”。当用户...

    VueMastery状态管理入门课程的回购___下载.zip

    在 Vuex 中,所有的状态都储存在一个单一的对象仓库中。 - **Mutations**:唯一修改状态的方式是通过提交 mutations。这确保了状态变更过程可追踪且遵循一定的规则。 - **Actions**:actions 提供了一种异步改变...

    CPP.zip_C++面向对象

    2. **继承**:继承允许一个类(子类)从另一个类(父类)中派生出来,子类可以继承父类的属性和方法,同时还可以添加新的特性。这促进了代码重用和类层次结构的建立。 3. **多态性**:多态性是指同一消息可以被不同...

    浅谈C++中派生类对象的内存布局

    当派生类`A1`从`A`派生并添加一个额外的`char`时,`A1`的内存布局会在`A`的基础上加上这个`char`和可能的填充,共12字节。需要注意的是,如果基类有虚函数,编译器通常会插入一个虚指针(vptr),用来指向虚函数表,...

    flex和as3之间互相调用的方法

    例如,创建一个自定义事件并在AS3类中派发,然后在MXML组件中添加事件监听器来响应: ```as3 // AS3类 dispatchEvent(new Event("myCustomEvent")); // MXML组件 ``` ```as3 private function ...

    Vue 面试指南附源代码

    - Vue 应用通过 `new Vue({})` 创建实例,每个实例代表一个组件树的根。 3. **如何在 Vue 中实现双向数据绑定?** - 使用 `v-model` 指令实现表单输入控件与数据模型之间的双向绑定。 4. **计算属性与侦听器的...

    c++的课件老师上课用的!对大家会有帮助的!

    当一个对象被用作另一个对象的初始化值时,拷贝构造函数会被调用。拷贝构造函数负责复制对象的所有成员,确保深拷贝或浅拷贝的正确性。 8. **类的聚集**: 类的聚集是指一个类包含其他类的实例作为其成员,这通常...

    由Person类派生出学生类Student和教师类Teacher

    在C++编程中,继承是一种重要的面向对象编程概念,它允许我们创建一个新的类(子类)来扩展已存在的类(父类)的功能。在给定的代码示例中,我们看到一个基本的继承结构,其中`Person`类作为基类,派生出了`Student`...

    vue20elementUI后台管理系统经典

    - **解构赋值**:方便地从数组或对象中提取值。 - **Promise**:处理异步操作,实现链式调用。 通过"vue-element-admin-master"这个项目,开发者可以深入理解Vue2.0和Element UI的结合使用,以及如何构建一个功能...

    继承与派生声明一个哺乳动物类声明一个shap(形状)基类,

    在这个实验中,我们主要关注两个方面:一是声明一个哺乳动物类(Mammal)及其派生类,二是声明一个形状基类(Shape)及其派生类。 首先,我们来详细解释一下哺乳动物类(Mammal)的实现。Mammal类具有三个数据成员...

    vue复习.docx

    2. `data`:组件内部的数据,必须是一个函数以确保每个组件实例有自己的数据副本。 3. `methods`:组件内的方法。 4. `components`:组件内部的局部组件注册。 Vuex是Vue的状态管理库,它提供了集中式的状态管理...

    C#中派生类调用基类构造函数用法分析

    主要介绍了C#中派生类调用基类构造函数用法,实例分析了派生类调用基类构造函数的技巧,具有一定参考借鉴价值,需要的朋友可以参考下

    Mysql 行转列 实现中派商家月额统计

    从提供的文件名`dev_zhongpai2013-09-13.sql`来看,可能是一个包含开发中商家数据的SQL脚本,可能包含了创建、插入或更新商家销售记录的操作。为了实际应用行转列,我们需要先运行这个脚本来导入数据,然后才能进行...

    促销活动中派送的巧妙运用.doc

    《促销活动中派送的巧妙运用》 促销活动是商家吸引消费者、推广新品的重要手段,而派送作为一种直接、有效的推广方式,尤其在IT行业和众多消费领域中被广泛应用。派送,即通过免费向目标消费者发放产品或试用品,...

    vuex离线教程.rar

    2. **Getter**(计算属性):类似于Vue组件的计算属性,getter允许我们从state中派生出新的值。这些值可以被多个组件共享,并且如果依赖的state发生变化,getter也会自动更新。 3. **Mutations**( mutation事件)...

    vue--vuex详解

    3. **Getters**:类似于计算属性,它们是从 state 中派生出的新状态值。getters 可以被多个组件共享,用于计算或处理 state 的数据,然后返回给组件使用。 4. **Actions**:负责执行异步操作。actions 与 mutations...

    2022年用ATL和MFC来创建ActiveX控件C语言教程.docx

    MFC 是 Microsoft 建立的一个框架,旨在使得开发 Windows 应用程序比运用 SDK 简单多了。MFC 提供了对 COM 对象模型的基本支持,使得开发者可以轻松地创建 ActiveX 控件。 MFC 的 COM 支持从 CcmdTarget 类开始,...

Global site tag (gtag.js) - Google Analytics