`

个人Flex知识库(2)

阅读更多
1、 根据邮件状态呈现不同的图片
<?xml version="1.0" encoding="utf-8"?>
<mx:VBox xmlns:mx="http://www.adobe.com/2006/mxml" width="100%" height="100%" xmlns:DataGrid="DataGrid.*">
    <mx:Script>
        <![CDATA[
            import mx.controls.dataGridClasses.DataGridColumn;
            import mx.collections.ArrayCollection;
            [Bindable]
            private var ac:ArrayCollection=new ArrayCollection([{name:"tu1",level:1},{name:"tu3",level:3},
                {name:"tu2",level:2}]);
               
        ]]>
    </mx:Script>
    <mx:DataGrid dataProvider="{ac}" width="100%" height="100%" variableRowHeight="true">
        <mx:columns>
            <mx:DataGridColumn headerText="名称" dataField="name"/>
            <mx:DataGridColumn dataField="level">
                <mx:itemRenderer>
                    <mx:Component>
                        <mx:HBox>
                            <mx:Image source="{getImage(data)}" autoLoad="true">
                                <mx:Script>
                                        <![CDATA[
                                            public function getImage(data:Object):Object{
                                                if(data.level=="1"){
                                                    return "assets/1.jpg";
                                                }
                                                if(data.level=="2"){
                                                    return "assets/2.jpg";
                                                }
                                                if(data.level=="3"){
                                                    return "assets/3.jpg";
                                                }
                                                return null;
                                            }
                                        ]]>
                                </mx:Script>
                            </mx:Image>
                        </mx:HBox>
                    </mx:Component>
                </mx:itemRenderer>
            </mx:DataGridColumn>
        </mx:columns>
    </mx:DataGrid>
</mx:VBox>


2、Flex date使用例子
<?xml version="1.0" encoding="utf-8"?>
<mx:Application xmlns:mx="http://www.adobe.com/2006/mxml" layout="vertical" backgroundGradientColors="[#ffffff, #ffffff]">
        <mx:Script>
                <![CDATA[
                        import mx.controls.DateField;
                        
                        [Bindable]
                        private var today:Date = new Date(new Date().setHours(0,0,0,0));
                        [Bindable]
                        private var start:Date = today;
                        [Bindable]
                        private var end:Date = start;
                        
                        //=======================================
                        //Event Handler
                        //=======================================
                        
                        /*DateChange*/
                        private function onDateChangeHandler(event:Event):void //此种方式保证了endDate的日期值必然大于等于startDate的值
                        {
                                //var currentDF:DateField = DateField(event.currentTarget);
                                
                                
                                if(startDF.text != "")
                                {
                                     
                                        start = startDF.selectedDate;  
                                }
                           
                                if(endDF.text != "")
                                {
                                           this.end = endDF.selectedDate;
                                }
                           
                                
                        }                        
                        
                ]]>
        </mx:Script>
        <mx:ApplicationControlBar width="446" dock="true">
                <mx:Label text="开始日期:" />
                <mx:DateField id="startDF"  showToday="true"  selectedDate="{start}" formatString="YYYY年MM月DD日"
                        selectableRange="{{rangeEnd:end}}" change="onDateChangeHandler(event)"/>
                        
                <mx:Label text="结束日期:"/>
                <mx:DateField id="endDF" showToday="true" selectedDate="{end}" formatString="YYYY年MM月DD日"
                        selectableRange="{{rangeStart:start,rangeEnd:today}}" change="onDateChangeHandler(event)"/>
        </mx:ApplicationControlBar>
        
</mx:Application>


3、 Flex动态曲线图
<?xml version="1.0"?>
<!-- Simple example to demonstrate the DateTimeAxis class. -->
<mx:Application xmlns:mx="http://www.adobe.com/2006/mxml"  creationComplete="init()">

    <mx:Script>
        <![CDATA[
        	import mx.controls.Alert;
            import mx.charts.chartClasses.AxisLabelSet;
            import mx.formatters.DateFormatter;
            import mx.charts.chartClasses.IAxis;
            import mx.collections.ArrayCollection;

            [Bindable]
            public var testDatas:ArrayCollection;
           
            [Bindable]
            private var maxDate:Date;
            [Bindable]
            private var minDate:Date;
           
            private var timer:Timer;
            private var dateFormat:DateFormatter = new DateFormatter();
            private var dateVar:Date;

            private function init():void {
                      
                dateFormat.formatString = "HH:NN:SS";     
                minDate = new Date();
                var dx:Date = new Date();
                dx.setMinutes(dx.getMinutes()+1, dx.getSeconds(), dx.getMilliseconds());
                maxDate = dx;
               
                dateVar = new Date();
                testDatas = new ArrayCollection([{date: dateVar, valueTest: 101.71} ]);
                  
                timer =  new Timer(1000);
                timer.addEventListener(TimerEvent.TIMER, getDatas);
                   timer.start();
                  
            }
           
            private function mylabel(labelValue:Object, previousValue:Object, d:IAxis):String {
                var str:String = dateFormat.format(labelValue);
                return str;
            }
           
            private function getDatas(et:Event):void {
                var valueTestValue:int = Math.random()*50;
                   var dm:Date = new Date();
                  
                   dm.setTime(dateVar.getTime()); 
                   dm.setSeconds(dm.getSeconds()+1, dm.getMilliseconds());
                   dateVar = dm;
                  
                   if (dateVar.getTime()>maxDate.getTime()) {
                       maxDate = dateVar;
                       var dx:Date = new Date();
                       dx.setMinutes(dx.getMinutes()-1, dx.getSeconds(), dx.getMilliseconds());
                       minDate = dx;
                   }
                 testDatas.addItem({date: dateVar, valueTest: valueTestValue});     
                //Alert.show("list长度为: "+testDatas.length);
            }
           
        ]]>
    </mx:Script>

    <mx:Panel title="DateTimeAxis Example" height="100%" width="100%">
        <mx:LineChart id="mychart" height="100%" width="100%"
            paddingRight="2" paddingLeft="3"
            showDataTips="true" >
           
            <mx:horizontalAxis>
                <mx:DateTimeAxis dataUnits="seconds" interval="3" minimum="{minDate}"   maximum="{maxDate}" labelFunction="mylabel"   />
            </mx:horizontalAxis>

            <mx:verticalAxis>
                <mx:LinearAxis baseAtZero="true" />
            </mx:verticalAxis>

            <mx:series>
               <mx:LineSeries yField="valueTest" xField="date" displayName="TestData" dataProvider="{this.testDatas}"/>
            </mx:series>
        </mx:LineChart>
    </mx:Panel>
</mx:Application>


4、 Flex datagrid的itemClick事件举例
<?xml version="1.0"?>
<mx:Application xmlns:mx="http://www.adobe.com/2006/mxml" layout="absolute" width="450" fontFamily="宋体" fontSize="12" height="400">
<mx:Script>
<![CDATA[
import mx.controls.*;
import mx.events.ListEvent;
import mx.controls.dataGridClasses.*;
private var DataGrid1:DataGrid;

[Bindable]//原始数据
public var dataArr:Array = [{id:1,name:"苹果",count:100},
{id:2,name:"西瓜",count:200},
{id:3,name:"水蜜桃",count:50}]

private function addItem():void{
        dataArr.push({id:uiId.value,name:uiName.text,count:uiCount.value})
        DataGrid2.dataProvider = dataArr
}
private function delItem():void{
        dataArr.pop();
        DataGrid2.dataProvider = dataArr
}
private function itemClick(e:ListEvent):void {
//Alert.show(DataGrid2.columns[0].headerText);
   var txt:String=""; //= "表头为: "+(e.target as DataGrid).columns[e.columnIndex].headerText+"\n"
//   txt+="选中第 "+e.columnIndex+" 列\n"
//   txt+="选中第 "+e.rowIndex+" 行\n"
//   txt+="选中的行的数据为:\n"
//   var dat:Object = (e.target as DataGrid).selectedItem
//   for(var i:* in dat){
//     txt+=" "+i+":"+dat[i]+"\n"
//   }
   txt+="选中的单元可格的数据为 "+(e.target as DataGrid).selectedItem[(e.target as DataGrid).columns[e.columnIndex].dataField]+" \n"
   Alert.show(txt)
   }
]]>
</mx:Script>

<mx:DataGrid id="DataGrid2" itemClick="itemClick(event)" dataProvider="{dataArr}" width="430" y="10" x="10" height="208">
<mx:columns>
<mx:DataGridColumn headerText="序号" dataField="id"/>
<mx:DataGridColumn headerText="名称" dataField="name"/>
<mx:DataGridColumn headerText="数量" dataField="count" editorDataField="value"/>
</mx:columns>
</mx:DataGrid>
<mx:NumericStepper id="uiId" x="10" y="241" width="150"/>
<mx:TextInput id="uiName" x="10" y="288" width="150"/>
<mx:NumericStepper id="uiCount" x="10" y="335" width="150"/>
<mx:Label x="10" y="224" text="序号:"/>
<mx:Label x="10" y="271" text="名称:"/>
<mx:Label x="10" y="318" text="数量:"/>
<mx:Button click="addItem()" x="10" y="368" label="添加" width="150"/>
<mx:Button click="delItem()" x="290" y="368" label="删除最后一个" width="150"/>
</mx:Application>

 
分享到:
评论

相关推荐

    Flex个人知识库之Apple组件

    "Flex个人知识库之Apple组件"这个标题暗示了这是一份关于使用Adobe Flex技术来构建针对Apple设备应用的知识资源。Flex是一种开源的、基于ActionScript的框架,用于创建富互联网应用程序(RIA),尤其适用于构建跨...

    Flex个人知识库(3)

    【Flex个人知识库(3)】是一个集合了与Flex相关技术知识的资源包,其中包含了一个名为"CloudMonitor"的子文件。Flex是一种用于构建富互联网应用(RIA,Rich Internet Applications)的技术,由Adobe公司开发,它允许...

    Flex ™ Builder 2

    ### Flex™ Builder 2 使用指南知识点详解 #### 一、Flex™ Builder 2 概述 **Flex™ Builder 2**是由Adobe Systems Incorporated发布的一款专为开发基于Adobe Flex框架的应用程序而设计的强大集成开发环境(IDE)...

    FlexBuilder2帮助文档

    4. **Flex组件库**:Flex提供了一系列内置组件,如Button、Label、Canvas等,文档会讲解如何使用这些组件构建用户界面,并展示自定义组件的方法。 5. **数据绑定**:Flex中的数据绑定机制允许开发者将UI元素的值与...

    FLEX开发中文文档

    这份文档由四部分组成,分别对应四个章节,旨在帮助开发者理解和掌握Flex的相关知识,同时融入了作者的个人理解和实践经验,以更贴近中文读者的理解习惯。 第一部分,"Flex中文帮助No1-2章.pdf",可能包含了Flex的...

    好看的FLEX相册

    描述中的“个人觉得还不错,挺好看的,自己做的FLEX相册。简单明了”,说明这个相册项目设计简洁,易于理解,而且是作者自己独立完成的。Flex相册可能包含了图片展示、缩略图导航、滑动切换等功能,并且注重用户界面...

    flex3

    3. **Flex SDK**: Flex SDK是开发Flex应用程序的基础工具集,包括编译器、Flex Builder插件、Flex组件库等。开发者可以免费下载和使用,创建自定义组件或者扩展已有组件。 4. **Flex Compiler**: Flex编译器负责将...

    java flex开发项目配置实例

    【Java Flex 开发项目配置实例】教程旨在帮助开发者快速搭建基于Java和Flex的开发环境,实现两者间的交互。...要深入学习Java Flex开发,还需要掌握ActionScript、MXML、BlazeDS配置、Spring框架集成等更多知识。

    一些关于flex的示例网站

    - **组件和容器**:Flex提供了丰富的UI组件库,包括按钮、文本框等,以及容器用于组织这些组件。 - **数据绑定**:Flex支持强大的数据绑定机制,允许UI组件与数据模型自动同步更新。 ### 2. Flex and Java ...

    Flex 一些个人认为不错的案例

    这个标题"Flex 一些个人认为不错的案例"表明我们将探讨一些使用Flex开发的优秀示例项目,这些案例可能展示了Flex在创建交互式、动态用户界面方面的强大力量。 描述中提到“大家一块分享,共同进步”,这暗示了这些...

    blog.zip_flex_flex blog

    **Flex知识点:** 1. **MXML和ActionScript**:Flex使用MXML作为声明式语言来构建用户界面,同时结合ActionScript进行程序逻辑编写。 2. **Flex组件库**:包括按钮、文本框、面板等UI元素,用于构建用户界面。 3. **...

    flex嵌入jsp心得

    标题与描述概述的知识点是关于如何将Flex框架嵌入到JSP页面中,以实现更丰富的数据可视化功能,特别是图表的展示。以下是基于标题、描述、标签以及部分内容的详细解析和扩展。 ### Flex嵌入JSP开发心得 #### 1. ...

    Flex 项目安装备份文件

    本文将深入探讨“Flex项目安装备份文件”的相关知识点,以及如何管理和保护您的源代码。 首先,我们需要理解“Flex项目”是什么。Flex项目是使用Flex Builder或Flash Builder等集成开发环境(IDE)创建的应用程序,...

    Flex实现动态仪表盘

    在Flex中,我们可以利用各种组件库来创建这些图形,例如Spark或MX组件集。Spark组件提供了更加现代和可定制的设计,而MX组件则更为成熟且功能丰富。 1. **数据源的连接**:首先,你需要一个数据源,可能是数据库、...

    Flex入门教程(PPT格式的) 个人觉得不错

    2. **ActionScript基础**:ActionScript是Flex的核心编程语言,基于ECMAScript,类似于JavaScript。它支持面向对象编程,使得开发者可以创建复杂的业务逻辑和动画效果。学习Flex的过程中,必须掌握ActionScript的...

    Flex4权威指南英文原版高清晰

    1. **强大的用户界面组件库**:Flex4提供了丰富的UI组件,可以轻松构建美观且功能完善的用户界面。 2. **高性能渲染引擎**:利用Adobe AIR和Flash Player等技术实现高效渲染,确保应用程序运行流畅。 3. **跨平台...

    整合flex与j2ee

    1. Flex的基础:Flex SDK的使用,MXML和ActionScript 3.0编程,以及Flex组件库的介绍。 2. J2EE架构:包括Servlet、JSP、EJB等组件,以及它们在企业级应用中的角色。 3. BlazeDS的安装和配置:如何在服务器上部署...

    Flex 3.0 手写签名系统

    可以创建一个签名库,将每个签名数据存储为文件,然后在Flex应用程序中以列表或网格的形式展示。用户可以选择预览、重新编辑或删除特定签名。编辑签名可能涉及到加载位图数据到舞台,让用户再次进行修改,然后重新...

Global site tag (gtag.js) - Google Analytics