1 在viewstack的导航中,如果用代码来切换选项卡时,可以不用selectedIndex,
而用selectedChild,比如选用lable="welcome"的pannel
<mx:Button label="welcome" click="viewstack.selectedChild=welcome"/>
2 rollover,rollout的效果
<mx:Image x="75" y="85" width="271" height="170" source="@Embed('assets/jacobs.jpg')"
rollOver="currentState='bookdetails'" rollOut="currentState=''"/>
3 <mx:SetEventHandler name="rollOut" target="{jason}" handler="currentState=''"/>
<mx:SetProperty target="{jason}" name="scaleX" value=".50"/>
<mx:SetProperty target="{jason}" name="scaleY" value=".50"/>
</mx:State>
这里对rollOut这个事件进行了自定义,target指定针对jason这个控件,处理的事件是改变其state(在
handler里处理),而<mx:SetProperty 真针对指定的目标控件,改变其属性,这里分别是scaleX,scaleY,改
变起长和宽
4 动画过度效果中,
<mx:Parallel targets="{[book,bookLink,title,isbn]}">
这里,指定[]内的组件都同时使用过渡效果
5 应用程序向组件传递参数:
先来看个组件:
<mx:Script>
<![CDATA[
[Bindable]
public var firstname:String;
[Bindable]
public var lastname:String;
]]>
</mx:Script>
<mx:Label text="{firstname}" id="txtfirstname"/>
<mx:Label id="txtlastname" text="{lastname}"/>
应用程序:
<mx:Script>
<![CDATA[
[Bindable]
public var name1:String="john";
[Bindable]
public var name2:String="smith";
]]>
</mx:Script>
<component:MyForm2 id="names" firstname="{name1}" lastname="{name2}" width="193"
height="141"/>
6 自定义事件:
<![CDATA[
private function clickHanler():void
{
var myEvent:Event=new Event("nameDataShared");
dispatchEvent(myEvent);
}
]]>
</mx:Script>
<mx:Metadata>
[Event(name="nameDataShared")]
</mx:Metadata>
<mx:Label text="name dispatcher" width="339" height="61"/>
<mx:Button label="Button" click="clickHanler()"/>
注意,这里定义了button的click的自定义事件,在<mx:Metadata>中,指定了这个click的事件的名
叫nameDataShared,并且在 clickHanler()中实例化这个事件,并用dispatchEvent把事件分发出去,
再来看调用:
private function sharedNameDataHander(evt:Event):void
{
shared="hello abc";
}
]]>
</mx:Script>
<component:Dispatcher x="57" y="75" nameDataShared="sharedNameDataHander(event)">
这里的nameDataShared="sharedNameDataHander(event)">,其实的作用就是相当于onclick了,
尝试把=号左边的nameDataShared换成onclick,你就明白了
7 httpservice连接xml,读取并显示到datagrid中去
<mx:Application xmlns:mx="http://www.adobe.com/2006/mxml" layout="absolute"
creationComplete="bookData.send()">
<mx:HTTPService id="bookData" url="assets/books.xml"/>
<mx:DataGrid x="119" y="104" dataProvider="{bookData.lastResult.books.stock}">
</mx:DataGrid>
8 格式化某一裂的日期,比如要格式化datagrid中的日期一列,可以这样:
<mx:Script>
<![CDATA[
import mx.controls.dataGridClasses.DataGridColumn;
private function dateFormat(dateItem:Object,dateColumn:DataGridColumn):String{
return publishDate.format(dateItem[dateColumn.dataField]);
}
]]>
</mx:Script>
<mx:HTTPService id="bookData" url="assets/books2.xml"/>
<mx:DateFormatter id="publishDate" formatString="YYYY-MM-DD"/>
<mx:DataGrid x="10" y="92" dataProvider="{bookData.lastResult.books.stock}"
width="950">
<mx:columns>
<mx:DataGridColumn dataField="name" headerText="name"/>
<mx:DataGridColumn dataField="author" headerText="author name"/>
<mx:DataGridColumn dataField="publish_date" headerText="publishdate"
labelFunction="dateFormat"/>
</mx:columns>
</mx:DataGrid>
9 在datagrid中嵌入控件
<mx:DataGridColumn dataField="review" headerText="review" editable="true"
itemEditor="mx.controls.TextArea"/>
如果要每行的该列都显示控件,itemEditor改为itemRenderer,假如要在datagrid
的某列中加入一个mx component ,则要改为:
<mx:DataGridColumn dataField="review" headerText="review" editable="true"
itemRenderer="ReviewForm" rendererIsEditor="true"/>,其中rendererIsEditor设置为
true,说明不单是读数据,还是要写数据。
10 datagrid中,当轮流点每行时,触发change事件,可以这样
change="changeHandler(event)">
private function changeHandler(evt:Event):void
{
bookname.text=evt.target.selectedItem.book_name;
authorname.text=evt.target.selectedItem.author;
coverpicture.source=evt.target.selectedItem.cover;
}
11 TREE的读取XML展开,并读取选择的结点展示的例子:
<mx:Script>
<![CDATA[
import mx.rpc.events.ResultEvent;
[Bindable]
private var treeXML:XMLList;
[Bindable]
private var selectedData:XML;
private function resultHandler(evt:ResultEvent):void
{
var result:XML=evt.result as XML;
treeXML=result..title as XMLList;
}
private function changeHandler(evt:Event):void
{
selectedData=myTree.selectedItem as XML;
}
]]>
</mx:Script>
<mx:HTTPService id="treeData" url="assets/bookTree.xml" resultFormat="e4x"
result="resultHandler(event)"/>
<mx:HBox x="0" y="31" width="900" >
<mx:Panel layout="absolute" id="leftPannel" title="swsdfdf">
<mx:Tree id="myTree" dataProvider="{treeXML}" labelField="@name"
change="changeHandler(event)"/>
</mx:Panel>
<mx:Panel height="{leftPannel.height}" id="rightPannel">
<mx:Form width="400">
<mx:FormItem label="book name">
<mx:Label text="{selectedData.@name}"/>
</mx:FormItem>
</mx:Form>
</mx:Panel>
</mx:HBox>
分享到:
相关推荐
Flex是Adobe公司推出的一种用于构建富互联网应用程序(RIA)的技术,它基于ActionScript编程语言和Flex框架,可以创建交互性强、用户体验优秀的Web应用。本教程是作者精心编写的Flex学习资料,适合初学者入门,通过...
Flex学习与总结 Flex是一种用于构建富互联网应用(RIA)的开发框架,由Adobe公司提供。RIA技术旨在提升网络应用的交互性和表现力,克服传统HTML页面在用户体验上的局限。随着网络带宽的提高,RIA逐渐成为互联网应用...
Flex编译错误码总结 Flex是一种基于ActionScript和MXML的开源框架,用于构建富互联网应用程序(RIA)。在开发过程中,我们可能会遇到各种编译错误,这些错误代码可以帮助开发者理解和解决遇到的问题。以下是对Flex...
Flex是Adobe公司开发的一种用于构建富互联网应用程序(RIA)的框架,主要基于ActionScript和MXML。本篇文章将深入探讨Flex的基本概念、数据绑定、HTTPService的使用以及创建自定义事件,这些都是Flex入门阶段需要...
Flex Socket开发总结 在开发基于Flex的应用程序时,与服务器进行实时通信是常见的需求,而Socket接口提供了这种能力。本文将深入探讨Flex中Socket开发的关键知识点,包括如何连接到Java和C++的Server Socket,以及...
10. 数据类型:`*`表示任意类型,`void`用于标记无返回值的函数,`Null`用于表示null值。 11. AS文件:ActionScript代码通常存储在`.as`文件中,用于组织类和库。 12. 常量定义:使用`const`关键字定义常量,如`...
在本文中,我们将深入探讨Flex中的关键概念,主要聚焦于摄像头操作、视频播放、自动弹出框、屏幕分辨率获取以及XML文件的读取。Flex是一个用于构建富互联网应用(RIA)的开发框架,它允许开发者创建具有交互性、动态...
Flex_4_样式与布局小结详细的资源描述有机会获得我们的推荐,更有利于他人下载,赚取更多积分
【Flex培训总结】 Flex,全称Adobe Flex,是由Macromedia公司推出的,旨在支持富互联网应用程序(RIA)的开发和部署的技术组合。随着Macromedia被Adobe收购,Flex也成为了Adobe的重要产品。Flex主要使用...
首先,由于Flex4需要Flash Player 10的支持,确保应用程序针对此版本的播放器进行编译是至关重要的。其次,Flex4中的CSS字体选择器现在需要命名空间,这与Flex3不同。为了适应这一变化,开发者需要在CSS中添加命名...
### Flex教程大全:Flex快速入门 #### 一、Flex简介 Flex是由Adobe公司推出的一款用于构建Web应用程序的技术框架。它允许开发者使用MXML(一种基于XML的语言)和ActionScript(一种面向对象的脚本语言)来进行高效...
FlexCAN(Flexible Controller Area Network)模块是一种实现了CAN(Controller Area Network)协议的通信控制器,即遵循CAN 2.0B协议规范。FlexCAN广泛应用于需要实时处理、可靠通信和成本效益的汽车串口总线系统中...
### Flex4.5常见问题总结 #### 一、Flex4.5组件开发模型与特性 Flex4.5采用了一种基于组件的开发模型,开发者可以通过继承现有组件并扩展其功能来构建自己的应用程序。这一模型的核心优势在于提高了代码的复用性,...
总结,Flex通过LCDS与本地SQL数据库进行交互,能够实现高效、实时的数据访问。开发者需理解Flex的AMF通信机制,配置好LCDS服务,并学会在ActionScript中编写数据库操作代码,以实现丰富的数据驱动的Flex应用。
#### 三、总结 通过以上步骤,可以完成Flex及其开发环境的搭建。这些准备工作为开发高质量的Flex应用奠定了坚实的基础。需要注意的是,随着技术的发展,目前可能会有更高版本的JDK、Tomcat以及Flex等工具可供选择,...
2011年是Flex技术发展的一个重要阶段,这个时期的总结将涵盖Flex的主要特性、应用领域以及当时的技术趋势。 Flex主要由以下几部分组成: 1. **Flex SDK**:一个开源开发工具包,包含了编译Flex应用程序所需的...