- 浏览: 439878 次
- 性别:
- 来自: 北京
文章分类
- 全部博客 (211)
- 思考》感想 (11)
- 数据库操作 譬如Oracle大叔 (7)
- java,咱们有缘吗 (16)
- delphi,你还好吗 (2)
- SSH,哥三儿好 (31)
- 问题!问题?问题!? (9)
- WITH WORK (1)
- 算法与模式 莫事^_^ (10)
- JSP,可以叫你P兄么 (2)
- 啊,咋科斯╮(╯▽╰)╭ (6)
- 巨人肩上的小石子 (2)
- flash她妹flex (38)
- 项目管理 (10)
- 奥特曼,你弟Android来了 (4)
- 麻辣儿gis (0)
- maven 嘛味儿 (3)
- ws 哇塞 webservice (5)
- Oh,no!!!,NoSql (1)
- QQ他哥也是个企鹅,Linux (6)
- 姓i还是姓my 你都叫batis ibatis (3)
- 我喜欢夏天(春天旁边的那个季节)Springside (1)
- 测试! 测就测吧,没有喝(⊙o⊙) (3)
- 是晕+_+ 是浮云 还是云计算 (4)
- ExtJS 你是flex他哥还是他妹 (10)
- svg 你丫的资料真少 (3)
- 叫屁屁还是叫加加 ⊙﹏⊙ c++ (5)
- 鸟,还是只百灵鸟 BIRT (1)
- 权限管理 有权真好 是吧-_-! (1)
- SSH (2)
- 哥三儿好 (2)
- nginx (1)
- Oh (1)
- no!!! (1)
- NoSql (1)
最新评论
-
mong619226543:
谢谢
No identifier specified for entity -
akka_li:
没看懂啥意思!什么原因导致java.net.SocketExc ...
java.net.SocketException: Connection reset 问题解决方法 -
west_jing:
1L正解,<mvc:annotation-driven/ ...
<mvc:default-servlet-handler/> 导致 Controller失效 -
u010954806:
tgfhfdhdf
Spring Security 国际化文件 messages_zh_CN.properties 中文解释 -
yenshen:
我也碰到这个问题了,找了一大圈,最终问题解决了:<con ...
<mvc:default-servlet-handler/> 导致 Controller失效
Extjs 、Flex 组件通过事件解耦示例
---》application
<?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" xmlns:components="components.*" click="trace('application...')">
<fx:Script>
<![CDATA[
import events.UiNameEvent;
private function cancelHandler(e:UiNameEvent):void{
trace("xxx"+e.type + e.time);
}
]]>
</fx:Script>
<fx:Declarations>
<!-- Place non-visual elements (e.g., services, value objects) here -->
</fx:Declarations>
<components:WarningDialog id="warningDialog" horizontalCenter="0" verticalCenter="0" userCancel="cancelHandler(event)"/>
</s:Application>
---》子组件
<?xml version="1.0" encoding="utf-8"?>
<s:Panel 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="225" xmlns:components="components.*"
title="Warning: Something to be warned about!" click="trace('panel...')">
<fx:Metadata>
[Event(name="userAccept",type="flash.events.Event")]
[Event(name="userCancel",type="events.UiNameEvent")]
</fx:Metadata>
<fx:Script>
<![CDATA[
import events.UiNameEvent;
[Bindable]
public var warningText:String = "Some type of long-winded warning message describing a problem would most likely go here! Do you want to proceed?";
private function okHandler(e:Event):void{
trace(e.type);
}
private function cancelHandler(e:UiNameEvent):void{ //捕获userCancel 事件 并进行处理
trace(e.type + e.time);
}
]]>
</fx:Script>
<s:BitmapImage source="@Embed('assets/warning.png')" left="25" top="18"/>
<s:Label text="{warningText}" width="150" fontSize="12" top="20" left="215" height="121"/>
<components:OkayCancelGroup id="okCancelGroup" left="219" bottom="22" userAccept="okHandler(event)" userCancel="cancelHandler(event)"/>
</s:Panel>
--》孙组件
<?xml version="1.0" encoding="utf-8"?>
<s:Group xmlns:fx="http://ns.adobe.com/mxml/2009"
xmlns:s="library://ns.adobe.com/flex/spark"
xmlns:mx="library://ns.adobe.com/flex/mx" >
<fx:Metadata>
[Event(name="userAccept",type="flash.events.Event")]
[Event(name="userCancel",type="events.UiNameEvent")] //添加事件元数据
</fx:Metadata>
<fx:Script>
<![CDATA[
import events.UiNameEvent;
import flash.sampler.NewObjectSample;
private function ok_clickHandler():void{
this.dispatchEvent(new Event("userAccept"))
}
private function cancel_clickHandler():void{
this.dispatchEvent(new UiNameEvent("userCancel",new Date())); //触发事件 userCancel 事件
}
]]>
</fx:Script>
<s:layout>
<s:HorizontalLayout/>
</s:layout>
<s:Button id="ok" label="Ok" click="ok_clickHandler()"/>
<s:Button id="cancel" label="Cancel" click="cancel_clickHandler()"/>
</s:Group>
--》自定义事件
package events
{
import flash.events.Event;
public class UiNameEvent extends Event
{
public var time:Date; //自定义属性
public function UiNameEvent(type:String,time:Date)
{
super(type,true);//可以改成 super(type) 不让此事件冒泡
this.time = time;
}
override public function clone():Event{ //必须覆盖clone方法
return new UiNameEvent(type,time);
}
}
}
通过自定义事件 上述的孙组件的ok_clickHandler 不在处理逻辑,而是放到子组件上捕获这个自定义事件,再进行逻辑处理,这样孙组件就能得到复用,也进行了解耦和。
---》application
<?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" xmlns:components="components.*" click="trace('application...')">
<fx:Script>
<![CDATA[
import events.UiNameEvent;
private function cancelHandler(e:UiNameEvent):void{
trace("xxx"+e.type + e.time);
}
]]>
</fx:Script>
<fx:Declarations>
<!-- Place non-visual elements (e.g., services, value objects) here -->
</fx:Declarations>
<components:WarningDialog id="warningDialog" horizontalCenter="0" verticalCenter="0" userCancel="cancelHandler(event)"/>
</s:Application>
---》子组件
<?xml version="1.0" encoding="utf-8"?>
<s:Panel 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="225" xmlns:components="components.*"
title="Warning: Something to be warned about!" click="trace('panel...')">
<fx:Metadata>
[Event(name="userAccept",type="flash.events.Event")]
[Event(name="userCancel",type="events.UiNameEvent")]
</fx:Metadata>
<fx:Script>
<![CDATA[
import events.UiNameEvent;
[Bindable]
public var warningText:String = "Some type of long-winded warning message describing a problem would most likely go here! Do you want to proceed?";
private function okHandler(e:Event):void{
trace(e.type);
}
private function cancelHandler(e:UiNameEvent):void{ //捕获userCancel 事件 并进行处理
trace(e.type + e.time);
}
]]>
</fx:Script>
<s:BitmapImage source="@Embed('assets/warning.png')" left="25" top="18"/>
<s:Label text="{warningText}" width="150" fontSize="12" top="20" left="215" height="121"/>
<components:OkayCancelGroup id="okCancelGroup" left="219" bottom="22" userAccept="okHandler(event)" userCancel="cancelHandler(event)"/>
</s:Panel>
--》孙组件
<?xml version="1.0" encoding="utf-8"?>
<s:Group xmlns:fx="http://ns.adobe.com/mxml/2009"
xmlns:s="library://ns.adobe.com/flex/spark"
xmlns:mx="library://ns.adobe.com/flex/mx" >
<fx:Metadata>
[Event(name="userAccept",type="flash.events.Event")]
[Event(name="userCancel",type="events.UiNameEvent")] //添加事件元数据
</fx:Metadata>
<fx:Script>
<![CDATA[
import events.UiNameEvent;
import flash.sampler.NewObjectSample;
private function ok_clickHandler():void{
this.dispatchEvent(new Event("userAccept"))
}
private function cancel_clickHandler():void{
this.dispatchEvent(new UiNameEvent("userCancel",new Date())); //触发事件 userCancel 事件
}
]]>
</fx:Script>
<s:layout>
<s:HorizontalLayout/>
</s:layout>
<s:Button id="ok" label="Ok" click="ok_clickHandler()"/>
<s:Button id="cancel" label="Cancel" click="cancel_clickHandler()"/>
</s:Group>
--》自定义事件
package events
{
import flash.events.Event;
public class UiNameEvent extends Event
{
public var time:Date; //自定义属性
public function UiNameEvent(type:String,time:Date)
{
super(type,true);//可以改成 super(type) 不让此事件冒泡
this.time = time;
}
override public function clone():Event{ //必须覆盖clone方法
return new UiNameEvent(type,time);
}
}
}
通过自定义事件 上述的孙组件的ok_clickHandler 不在处理逻辑,而是放到子组件上捕获这个自定义事件,再进行逻辑处理,这样孙组件就能得到复用,也进行了解耦和。
发表评论
-
Flex4多文件上传示例
2014-05-17 22:59 883---》Flex <?xml version=&quo ... -
FLEX 与 JSP 视图的结合开发
2014-03-26 17:08 1159FLEX 与 JSP 视图的结合开发 虽然用了flex作了视 ... -
heightChart 与extjs整合 动态生成历史曲线 和实时曲线
2012-03-05 17:09 5119heightChart 与extjs整合 动态生成历史曲线 和 ... -
flex 上传excel 导入数据库
2011-06-13 12:01 6813flex 上传excel 导入数据库 前端用flex上传ex ... -
flex 、servlet生成验证码方式
2011-05-05 14:07 1203flex 、servlet生成验证码方式 -----》fle ... -
中文命名的图片加载后 本地能显示 但放到服务器上就出不来了
2011-02-22 16:16 2717中文命名的图片加载后 本地能显示 但放到服务器上就出不来了 ... -
flex 程序减肥几种方法
2011-02-17 14:05 993flex 程序减肥几种方法 1、采用模块化管理 2、采用RS ... -
flex动态换肤的demo例子
2011-02-17 09:30 1330flex动态换肤的demo例子 ----》建立三个css样 ... -
as3的反射
2011-01-28 17:30 1256as3的反射 ------》getDefinitionByN ... -
AIR 应用: 黏贴 剪贴板中的图片
2011-01-24 11:14 1462AIR 应用: 黏贴 剪贴板中的图片 from : http: ... -
flex 权限系统研究
2011-01-12 15:59 1679f权限一般就是涉及增删改查 的操作。 思路,利用flex-s ... -
如何在左上角画图
2010-12-31 10:50 1407如何在左上角画图 我想在屏幕左上角 画一个正方形,按下面的代码 ... -
类似javadoc功能的 flex asdoc
2010-12-21 10:33 1281配置过程 可以参考 http://bhsc-happy.ite ... -
Printing Multiple Pages Using PrintDataGrid(Flex打印系列 转载)
2010-12-20 14:08 1230In the previous tutorial, we kn ... -
Flash Builder 找不到所需的 Adobe Flash Player 调试器版本 问题解决
2010-12-15 13:28 5676Flash Builder 找不到所需的 Adobe Flas ... -
Cairngrom Demo程序撰写心得
2010-12-10 14:42 1100------》执行顺序 初始化事件与处理进行绑定组件( ... -
felx包含到jsp中去
2010-10-08 15:05 1497Jsp包含到flex中用iframe; Flex包含到jsp中 ... -
为什么定义事件用<mx:Metadata> 标签
2010-10-08 11:01 3322定义方法方式: <mx:Metadata> ... -
mate框架应用几点心得
2010-09-29 11:23 1206mate框架应用几点心得 *** new 事件的时候一定要冒 ... -
后台的返回的结果集是object类型的,不是具体对象?
2010-09-14 14:43 1442后台的返回的结果集是object类型的,不是具体对象? 解决方 ...
相关推荐
开发者可以根据实际需求,通过调整配置、编写事件处理器以及利用EXTJS的其他组件和工具,打造出满足各种需求的文件上传功能。同时,要确保在使用过程中充分考虑安全性,确保应用的稳定性和用户数据的安全。
通过阅读ExtJS的源码,我们可以学习到事件处理、数据绑定、布局管理等高级特性,从而更好地优化代码和解决问题。 最后,工具在ExtJS开发中也起着重要作用。例如,Sencha Animator可以帮助创建动画效果,Sencha ...
总的来说,这些文件和标签涉及到的技术和工具都集中在Web环境下的流程设计和管理上,无论是EXTJS的组件化开发,Flex的富客户端展示,还是各种流程设计器的使用,都是为了实现更高效、更直观的业务流程自动化。...
extjs,flex,dojo的理解
通过以上步骤,你不仅能够成功导入并运行ExtJS组件的示例,还能在Eclipse这个熟悉的开发环境中进行学习和实践。了解每个组件的用法和配置,是掌握ExtJS的关键。记住,实践是检验知识的最好方式,动手尝试并不断试验...
在"ExtJS编写的youtube视频播放组件 示例"这个主题中,我们将深入探讨如何使用ExtJS来开发一个YouTube视频播放器组件。 首先,让我们理解组件(Component)在ExtJS中的概念。组件是ExtJS应用程序的基本构建块,可以...
在提供的压缩包文件"extjs4.1_TreeGrid"中,可能包含了一些EXTJS 4树形表格组件的示例代码和资源,通过学习和分析这些示例,你可以更好地理解如何在项目中应用这个组件。 总结来说,EXTJS 4的树形表格组件是一个...
"Extjs树分页组件扩展"就是为了解决这一问题而设计的,它通过扩展TreeLoader和PagingToolbar,实现了在树形组件中进行分页加载的效果。 **TreeLoader的扩展** TreeLoader是ExtJS中负责异步加载树节点的类。在原生...
为了进一步了解EXTJS Portal组件的用法,你需要熟悉EXTJS的MVC(Model-View-Controller)架构,理解如何创建和配置Components,以及如何处理用户交互事件。EXTJS的API文档是学习的关键资源,它提供了关于每个类、...
通过研究和理解"ExtJS日期多选组件源码",开发者可以深入学习ExtJS组件设计、事件处理、数据绑定等核心概念,并能进一步定制适合自己项目需求的日期选择组件。这样的组件对于提高开发效率和用户体验具有积极的意义。
EXTJS 提供了一套完整的组件模型、数据绑定、事件处理机制,以及丰富的UI控件,使得开发者可以构建出交互性强、功能完善的Web应用。 在"EXTJS net 增删改查示例"中,我们将探讨如何使用EXTJS与后端网络接口(通常...
深入浅出extjs(第二版)示例源码光盘,包含3.0.0,3.1.1,3.2.0
**ExtJS 3.0 常用组件介绍** ExtJS 是一款强大的JavaScript库,用于构建富客户端Web应用。在3.0版本中,它提供了一系列丰富的组件,这些组件可以帮助开发者构建功能丰富的用户界面。以下是一些ExtJS 3.0中的常用...
在学习EXTJS 3.0 时,通过实践示例(demo)是提高理解的最好方法。课程中的大量demo 将帮助你更好地掌握每个组件的用法,加深对EXTJS 工作原理的理解。你可以通过运行这些示例,亲自调整参数,观察结果,从而提升...
EXTJS是一种基于JavaScript的富客户端应用框架,专用于构建企业级的Web应用程序。EXTJS以其强大的数据绑定、灵活的布局...通过学习和使用这些组件,开发者能够更好地发挥EXTJS的优势,创造出更符合用户需求的Web应用。
通过实践这些示例,可以加深对ExtJS组件和API的理解,提升开发Web应用的能力。 总的来说,"ExtJS静态使用示例"提供了一个学习和实践ExtJS基础功能的机会,通过Grid、Panel和Tree的使用,可以帮助开发者掌握如何在...
### Extjs自定义组件——下拉树:深入解析与实现 在现代Web开发中,Extjs作为一款功能强大且灵活的框架,深受开发者喜爱。它提供了丰富的UI组件库,能够帮助开发者快速构建复杂的用户界面。其中,自定义组件是Extjs...
extjs各种组件的详细实现及各种扩展归纳总结,包括各种grid,tree,布局,表单,ajax,弹出框等
3. **错误地new**:对于UI组件,ExtJS提供了一种称为xtype的机制,通过xtype可以实现组件的懒加载和延迟渲染,从而提高应用程序的整体性能。但在实际开发过程中,经常可以看到开发者直接使用`new`关键字创建组件实例...