- 浏览: 141189 次
- 性别:
- 来自: 广州
最新评论
-
zfms:
写的不孬,有时间交流一下
Openfire Server presence(在线状态)消息处理流程 -
yangjianzhouctgu:
您好 可以请教您个问题吗
Aptana Ajax库插件---EXT2.0 -
tianlihu:
不错,比较有效解决了问题
IE6中用了float:left之后导致margin-left双倍边距的BUG解决方法 -
mzba520:
我想请问能不能把openfire部署到tomcat中去,就是把 ...
openfire 源代码研究一 (运行环境的搭建) -
eric_hwp:
...
部署Openfire源码
<script type="text/javascript"></script>
9.1 认识数据绑定
9.1.1 数据绑定的概念
使用数据绑定时,Flex 会自动把一个对象的数据复制,提供给另一个对象使用,提供数据一方称为数据源对象,使用数据的一方称为目标对象。当数据源对象的数据发生变化时,目标对象的数据会自动更新。
实质上,绑定的实现也是借助事件机制来完成的,当目标使用了数据绑定,目标对象就会侦听数据源的某一个固定事件。如果数据源改变,就派发事件,通知目标对象更新最新数据。当然这个过程都是由Flex来完成。
作为绑定的数据源对象,必须支持绑定--对象有派发改变事件的能力。
使用数据绑定的多数情况:
实质上,绑定的实现也是借助事件机制来完成的,当目标使用了数据绑定,目标对象就会侦听数据源的某一个固定事件。如果数据源改变,就派发事件,通知目标对象更新最新数据。当然这个过程都是由Flex来完成。
作为绑定的数据源对象,必须支持绑定--对象有派发改变事件的能力。
使用数据绑定的多数情况:
- 将后台数据(通过Web Service 或 Remoting 方式得到的数据)绑定给控件
- 把控件数据绑定给后台通信对象,发送给后台服务端
- 后台返回数据和数据模型 进行绑定
- 组件或对象属性的数据绑定
9.1.2 如何使用数据绑定
将数据源对象房子大括号{}中,作为目标对象的值就可以了。
backgroundColor="{mColor.value.toString()}"
在{}中也可以使用AS:
text="{(Number(age_txt.text)>= 16)?'成年':'未成年'}"
- <?xml version="1.0" encoding="utf-8"?>
- <mx:Application xmlns:mx="http://www.adobe.com/2006/mxml" layout="absolute">
- <mx:Style source="style.css" />
- <mx:ColorPicker id="mColor" x="30" y="30"/>
- <mx:Canvas styleName="box" id ="box" x="30" y="80" backgroundColor="{mColor.value.toString()}" width="200" height="172">
- </mx:Canvas>
- </mx:Application>
<?xml version="1.0" encoding="utf-8"?> <mx:Application xmlns:mx="http://www.adobe.com/2006/mxml" layout="absolute"> <mx:Style source="style.css" /> <mx:ColorPicker id="mColor" x="30" y="30"/> <mx:Canvas styleName="box" id ="box" x="30" y="80" backgroundColor="{mColor.value.toString()}" width="200" height="172"> </mx:Canvas> </mx:Application>
也可以使用函数:
scaleX="{doResize(scale)}"
定义scale 到时候使用了[Bindable]来使它具有绑定功能,[Bindable]是元标签的一种,专门用来定义绑定中的数据源对象,event事件名指当前数据源发生变化时,数据源所在对象派发的事件类型,可选的,默认:propertyChange :
[Bindable]
[Bindabl(event="eventname")]
比如我们定义scale:
[Bindable]
private var scale:Number = 1;
- <?xml version="1.0" encoding="utf-8"?>
- <mx:Application xmlns:mx="http://www.adobe.com/2006/mxml" layout="absolute">
- <mx:Style source="style.css" />
- <mx:Script>
- <![CDATA[
- [Bindable]
- private var scale:Number = 1;
- internal function doResize(n:Number):Number{
- zoom.zoomWidthTo = n;
- zoom.play();
- return box.scaleX;
- }
- ]]>
- </mx:Script>
- <mx:Zoom id="zoom" originX="0" originY="0" target="{box}" />
- <mx:HSlider id="slider" x="120" y="301" change="scale =slider.value" minimum="0" maximum="1"/>
- <mx:Canvas id="box" styleName="box" x="100" y="56" scaleX="{doResize(scale)}" width="200" height="200">
- </mx:Canvas>
- </mx:Application>
<?xml version="1.0" encoding="utf-8"?> <mx:Application xmlns:mx="http://www.adobe.com/2006/mxml" layout="absolute"> <mx:Style source="style.css" /> <mx:Script> <![CDATA[ [Bindable] private var scale:Number = 1; internal function doResize(n:Number):Number{ zoom.zoomWidthTo = n; zoom.play(); return box.scaleX; } ]]> </mx:Script> <mx:Zoom id="zoom" originX="0" originY="0" target="{box}" /> <mx:HSlider id="slider" x="120" y="301" change="scale =slider.value" minimum="0" maximum="1"/> <mx:Canvas id="box" styleName="box" x="100" y="56" scaleX="{doResize(scale)}" width="200" height="200"> </mx:Canvas> </mx:Application>
使用<mx:Binding> 标签来定义数据绑定:
<mx:Binding source="users.user.blogURL" destination="pic.toolTip" />
其中source指定数据源,destination指定目标对象的属性,两者的数据类型必须相同
- <?xml version="1.0" encoding="utf-8"?>
- <mx:Application xmlns:mx="http://www.adobe.com/2006/mxml" layout="absolute">
- <mx:Style source="style.css" />
- <mx:Model id="users">
- <users>
- <user>
- <name>Peter Ent</name>
- <blogURL>http://weblogs.macromedia.com/pent</blogURL>
- <rss>http://weblogs.macromedia.com/pent/index.xml</rss>
- <pic>pic_1.png</pic>
- </user>
- </users>
- </mx:Model>
- <mx:Binding source="users.user.name" destination="name_txt.text" />
- <mx:Binding source="users.user.blogURL" destination="blog_btn.label" />
- <mx:Binding source="users.user.rss" destination="rss_btn.label" />
- <mx:Binding source="users.user.pic" destination="pic.source" />
- <mx:Binding source="users.user.blogURL" destination="pic.toolTip" />
- <mx:Panel styleName="myPanel" x="74" y="78" width="327" height="309" layout="absolute" title="查看信息">
- <mx:Image id="pic" x="10" y="19" width="277" height="76" scaleContent="true"/>
- <mx:Label id="name_txt" x="10" y="135" width="154"/>
- <mx:LinkButton id ="blog_btn" x="10" y="163" width="236" textAlign="left"/>
- <mx:LinkButton id="rss_btn" x="10" y="195" width="236" textAlign="left"/>
- </mx:Panel>
- </mx:Application>
发表评论
-
flex 电子书籍下载
2009-11-25 17:12 2144http://wmcai.blog.163.com/blog/ ... -
基于servlet导出Flex/Flash界面为图形文件的简单方法
2009-07-31 14:12 1655关键字: flex,chart,java 使用fl ... -
Flex 3的本地化应用
2009-07-20 13:30 1558这两天看了一下Flex 3的 ... -
FLEX组件的生命周期
2009-05-22 14:42 1648组件实例化生命周期描述了用组件类创建组件对象时所发生的一系列步 ... -
Flex性能优化之cpu占用率
2009-05-08 10:39 4830先扯几句,team中有一个正在试运行的项目,最近被客户打了 ... -
Understanding garbage collection in Flash Player 9
2009-05-06 19:19 1196原文 Understanding garbage ... -
关于firefox文本折行的问题
2009-04-13 14:57 1593一直有传说这个是firefox的一个bug,属于无法完美解决的 ... -
Adobekit教你如何修改FLASH右键菜单
2009-04-07 10:32 4904有些东西只有用到了才 ... -
CSS IE7 IE6 Firefox多浏览器兼容-著名的星号* Html Hack(招数)[z]
2009-04-01 10:08 2878From: [url]http://www.keephelp. ... -
Flex上载和下载文件
2009-01-20 14:28 5689示例:上载和下载文件 FileIO 示例说明了在 Flash ... -
Flex 2 中的元数据标签
2009-01-19 16:33 906原文作者:Rich Tretola(作者是everything ... -
理解ClassLoader机制
2009-01-18 23:09 1221当JVM(Java虚拟机)启动时,会形成由三个类加载器组成的初 ... -
一个简易实用的web权限管理模块的应用与实现
2009-01-18 21:59 1401本文介绍一个简易实用的web权限管理模块的应用与实现。 ... -
JS中Null与Undefined的区别
2009-01-04 17:40 2352在JavaScript中存在这样两种原始类型:Null与Und ... -
Flex3 framework RSL机制介绍
2008-12-25 17:45 2396阻碍Flex应用的一个很大因素就是采用Flex框架的程序体积非 ... -
IE6中用了float:left之后导致margin-left双倍边距的BUG解决方法
2008-12-22 17:17 5033先看css代码: div { float:left; ... -
Adobe Meermeer:跨浏览器网页测试工具
2008-12-09 09:24 1663每年Adobe公司都会有一个最具吸引力的项目,在2007年的会 ... -
网站性能优化
2008-12-03 17:59 971/** *作者:张荣华 *日期:2008-12-01 **/ ... -
openfire 源代码研究一 (运行环境的搭建)
2008-11-30 21:31 3320关于Openfire的介绍在此不多说了,网上有很多关于这个基于 ... -
FLEX3中应用CSS完全详解手册!
2008-11-21 14:13 1820编辑完这个FLEX下的CSS说明后,我基本已经兵临崩溃边缘了。 ...
相关推荐
Flex学习笔记_09 数据绑定_概念、使用 - Java&Flex - JavaEye技术网站 希望对爱好有帮助!!
本教程是作者精心编写的Flex学习资料,适合初学者入门,通过图文并茂的方式,帮助读者快速掌握Flex的基本概念和核心技能。 1. **Flex基础**:Flex提供了MXML和ActionScript两种编程方式。MXML是一种声明式语言,...
这份“Flex学习笔记”应该是一个全面的引导,帮助初学者理解Flex的基本概念和技术,通过实例来加深理解,从而快速进入Flex开发的世界。对于想要进一步提升技能的开发者来说,这将是一个很好的起点。
Flex学习笔记1 - 容器布局对象状态的切换和数据绑定 在 Flex 应用程序中,容器布局对象状态的切换是非常常见的需求。例如,在购物车应用程序中,我们可能需要在不同的状态之间切换,例如从商品浏览状态到购物车状态...
根据提供的信息,我们可以总结出以下关于Flex学习笔记中的关键技术知识点...综上所述,这些Flex学习笔记涵盖了从基本样式设置到复杂的数据处理与展示等多个方面。对于初学者来说,这些都是非常实用且必须掌握的知识点。
这篇“Flex学习笔记”可能是作者在深入研究Flex技术过程中整理的心得体会和实践案例,结合了《Flex3权威指南》这本书的内容。 在Flex中,ActionScript是核心编程语言,它是基于ECMAScript的一个版本,专门针对富...
本笔记将深入探讨Flex的基本概念、架构、组件、布局管理器以及事件处理机制,帮助初学者全面理解并掌握Flex开发。 1. **Flex简介**:Flex是一种开放源代码的框架,主要用于创建交互式的、基于Web的用户界面。它允许...
Flex是Adobe公司推出的一种用于构建富互联网...随着对Flex的深入学习,开发者将掌握更多高级特性,如数据绑定、动画效果、组件自定义以及与后端服务器的深度集成等,从而能够创建出更复杂、功能丰富的富互联网应用。
本篇“Flex学习笔记”将带你深入理解Flex的核心概念、架构以及如何使用它来构建高效的应用程序。 一、Flex基础 1. MXML与ActionScript:Flex主要使用MXML(Markup Language for Flex)和ActionScript两种语言进行...
通过阅读“FLEX学习笔记”的博客文章,你可以期望找到更多关于这些概念的实际应用和开发者在学习过程中遇到的问题及解决方案。而解压并研究"MyDemo"项目,则能让你看到Flex项目的实际结构,帮助你在实践中学习和理解...
### Flex学习笔记:ActionScript与Flex开发入门 #### 1. ActionScript核心概念 ##### 1.1 类和对象(Class and Object) 类是对象的模板,定义了一组具有相同特性和行为的对象的共同属性和方法。在ActionScript中...
### Flex4.5学习笔记知识点总结 #### 一、Flex基础——布局 **知识点1:Flex布局** - **垂直布局** (`s:VerticalLayout`): 控件垂直排列。 - **水平布局** (`s:HorizontalLayout`): 控件水平排列。 - **平铺布局**...
《Flex企业应用开发实战》的学习笔记主要探讨了Flex在企业应用开发中的基础知识,包括MXML语言、客户端状态保持、客户端MVC模式以及数据绑定技术。 2.1 MXML语言是Flex应用开发的核心部分,它是一种XML标记语言,与...
Flex开发学习笔记4主要关注的是如何在Flex应用中实现分页列表组件,这对于构建大型数据展示界面至关重要。Flex是一个开源的、基于ActionScript的框架,用于创建富互联网应用程序(RIA)。在这里,我们不仅会探讨Flex...
Flex开发学习笔记6.1主要聚焦于创建Flex Library Project,这是一种在Adobe Flex开发环境中构建可重用组件的方式。Flex Library Project允许开发者创建自定义组件,这些组件可以被多个应用程序共享,提高了代码复用...
【描述】:“NULL”意味着没有提供具体的描述信息,但根据标题,我们可以推断这篇内容可能涵盖了Flex的基本概念、组件使用、布局管理、数据绑定、事件处理以及与后端服务的交互等方面。博主可能在iteye博客平台上...
由于它是Bindable的,因此当模型中的数据发生变化时,与之绑定的视图能够自动更新,实现了数据的实时同步。 2. **Service Locator**: Service Locator是用于定位服务和数据访问对象的组件,它定义了与数据源(如...
8. **学习资源**:此资源包不仅包含示例代码,还可能包含教程、文档或笔记,帮助学习者理解Flex的基本概念、语法和最佳实践。 9. **交互交流**:作者强调了资源经过测试,且希望学习者能相互交流,这意味着可能存在...