`

flex----常规组件

    博客分类:
  • flex
阅读更多

1.Alert

Alert.OK = 1;
Alert.YES = 2;
Alert.NO = 4
Alert.CANCEL = 8;
Alert.show("Do you want to save your changes?","Save Changes",3,this,alertClickHandler);//this代表父对象,Save Changes是显示的标题
Alert.show("Do you want to save your changes?","Save Changes",1|2,this,alertClickHandler);//效果一样,因为|就是二进制求和表达
//这里3=1+2意思是显示ok和yes按钮

 private function alertClickHandler(event:CloseEvent):void {
                if (event.detail==Alert.YES)
                    status.text="You answered Yes";
                else
                    status.text="You answered No";
            }
  private function secondClickHandler(event:Event):void { //在Alert.show之前可以设置宽度等一系列的属性
                Alert.buttonWidth = 100;
                Alert.yesLabel = "Magenta";
                Alert.noLabel = "Blue";
                Alert.cancelLabel = "Green";

                Alert.show("Select a color:","Color Selection",1|2|8,this);
                
                // Set the labels back to normal:
                Alert.yesLabel = "Yes"; //因为修改了,这里修改回来
                Alert.noLabel = "No";                
            }     

2.颜色拾取器 ColorPicker 

<mx:ColorPicker id="cp" showTextField="true" selectedColor="0xFFFFFF"/>
    
        <mx:VBox width="100%" height="100%" backgroundColor="{cp.selectedColor}" borderStyle="solid"/>

3。下拉列表,相当于html中的select

<mx:ComboBox dataProvider="{cards}" width="150" 
            close="closeHandler(event);"/>

//他可以解析这样的json ,close表示在选择改变的时候触发

             [Bindable]
            public var cards:ArrayCollection = new ArrayCollection(
                [ {label:"Visa", data:1}, 
                  {label:"MasterCard", data:2}, 
                  {label:"American Express", data:3} ]);
        
            private function closeHandler(event:Event):void {
                myLabel.text = "You selected: " +  ComboBox(event.target).selectedItem.label;
                myData.text = "Data: " +  ComboBox(event.target).selectedItem.data;
            }  

4。横向列表,columnCount="3"表示只有三列,columnWidth="125"表示每一列的长度

 <mx:HorizontalList id="CameraSelection" height="250" columnCount="3" columnWidth="125">
 //这里的数据提供者也可以用json  ,这里是用的标签的形式
            <mx:dataProvider>
                <mx:Array>
                    <mx:Object label="Nokia 6630" icon="{phone1}"/>
                    <mx:Object label="Nokia 6680" icon="{phone2}"/>
                    <mx:Object label="Nokia 7610" icon="{phone3}"/>
                   <mx:Object label="Nokia 7610" icon="{phone4}"/>

                </mx:Array>
            </mx:dataProvider>
        </mx:HorizontalList>
            
             [Bindable]
             [Embed(source="../assets/nokia6630.png")]
             public var phone1:Class;
             
             [Bindable]
             [Embed(source="../assets/Nokia6680.png")]
             public var phone2:Class;
             
             [Bindable]
             [Embed(source="../assets/Nokia7610.png")]
             public var phone3:Class;            

5。纵向列表
 <mx:TileList id="CameraSelection" height="250" width="300" 
            maxColumns="2" rowHeight="225" columnWidth="125">
            <mx:dataProvider>
                <mx:Array>
                    <mx:Object label="Nokia 6630" icon="{phone1}"/>
                    <mx:Object label="Nokia 6680" icon="{phone2}"/>
                    <mx:Object label="Nokia 7610" icon="{phone3}"/>
                    <mx:Object label="Nokia LGV" icon="{phone4}"/>
                    <mx:Object label="Nokia LMV" icon="{phone5}"/>
                </mx:Array>
            </mx:dataProvider>
        </mx:TileList>
和横向差不多       



6。List 相当于html中select被展开后的样子

              [Bindable]
            public var selectedItem:Object;//使得这个对象可以联动


 <mx:List id="source" width="100%" color="blue"
            dataProvider="{mystates.state}"
            change="this.selectedItem=List(event.target).selectedItem"/>

 <mx:Model id="mystates">
      <states>
        <state label="Alabama" data="AL"/>
        <state label="Alaska" data="AK"/>
        <state label="Arizona" data="AZ"/>
        <state label="Arkansas" data="AR"/>
        <state label="California" data="CA"/>
        <state label="Colorado" data="CO"/>
        <state label="Connecticut" data="CT"/>
      </states>
    </mx:Model>

 
7。Tree
labelField="@label"是告诉组件,自定义的xml的lable是什么,showRoot="false" 表示不显示像 <node label="Mail Box">这样的根元素


 <mx:Script>
        <![CDATA[

            [Bindable]
            public var selectedNode:XML; //为什么要转换成xml,因为这样可以使用xpath

            // Event handler for the Tree control change event.
            public function treeChanged(event:Event):void {
                selectedNode=Tree(event.target).selectedItem as XML;
            }
        ]]>
    </mx:Script>

    <mx:XMLList id="treeData">
	    <node label="Mail Box">
	        <node label="Inbox">
	            <node label="Marketing"/>
	            <node label="Product Management"/>
	            <node label="Personal"/>
	        </node>
	        <node label="Outbox">
	            <node label="Professional"/>
	            <node label="Personal"/>
	        </node>
	        <node label="Spam"/>
	        <node label="Sent"/>
		</node>	
    </mx:XMLList>

    <mx:Panel title="Tree Control Example" height="75%" width="75%" 
        paddingTop="10" paddingLeft="10" paddingRight="10" paddingBottom="10">

        <mx:Label width="100%" color="blue" 
            text="Select a node in the Tree control."/>

        <mx:HDividedBox width="100%" height="100%">
            <mx:Tree id="myTree" width="50%" height="100%" labelField="@label"
                showRoot="false" dataProvider="{treeData}" change="treeChanged(event)"/>
            <mx:TextArea height="100%" width="50%"
                text="Selected Item: {selectedNode.@label}"/>
        </mx:HDividedBox>
        
    </mx:Panel>    

8。数据表格
 <mx:XMLList id="employees">
        <employee>
            <name>Christina Coenraets</name>
            <phone>555-219-2270</phone>
            <email>ccoenraets@fictitious.com</email>
            <active>true</active>
        </employee>
        <employee>
            <name>Joanne Wall</name>
            <phone>555-219-2012</phone>
            <email>jwall@fictitious.com</email>
            <active>true</active>
        </employee>   
 </mx:XMLList>        
        
 <mx:DataGrid id="dg" width="100%" height="100%" rowCount="5" dataProvider="{employees}">
            <mx:columns>
                <mx:DataGridColumn dataField="name" headerText="Name"/>
                <mx:DataGridColumn dataField="phone" headerText="Phone"/>
                <mx:DataGridColumn dataField="email" headerText="Email"/>
            </mx:columns>
 </mx:DataGrid>
 
 把xml中的对应东西放到这个数据表格中,headerText是表头文字,
 注意,组件本身就是一个能动态感知的对象
 
 <mx:Label text="{dg.selectedItem.name}"/>
 
分享到:
评论

相关推荐

    flex-autocomplete-master.zip_flex

    由于没有具体的代码内容,以上分析是基于对Flex开发的常规理解。在实际项目中,你将需要解压文件,查看源代码,理解其架构和实现细节,以获取更深入的知识。同时,对于初学者,这是一个很好的实践案例,可以加深对...

    FlexLayout布局-wechat-app-flexlayout-master

    微信小程序的FlexLayout基于CSS3的Flexbox模型,允许开发者更加灵活地控制组件的排列、对齐和分布。下面我们将深入探讨FlexLayout布局的相关知识点。 1. **Flexbox布局模型** Flexbox(Flexible Box)布局模型是...

    flex-demo(读取xml文件)

    描述中提到的步骤是执行这个Flex项目的常规流程: 1. **下载并解压**:用户首先需要从某个来源下载名为“flex-demo”的压缩包,然后将其解压缩到本地计算机上。这通常包含项目的所有源代码、资源文件和其他配置文件...

    flex 重写组件

    #### 四、使用ActionScript重写组件的常规步骤 1. **创建基于标记的皮肤**:如果需要,先为组件创建皮肤文件。 2. **创建ActionScript类**: - **继承基类**:通常是从`UIComponent`或其他Flex组件类继承。 - **...

    Flex常规控件和组件

    下面将详细介绍这些常规的 Flex 控件和组件: 1. Button:Button 是最基本的动作触发器,用于响应用户的单击事件。它可以包含文字标签和图标,用于指示用户执行特定操作。 2. ButtonBar:ButtonBar 是一组逻辑相关...

    Flex_Viewer解析-----结构(1).doc

    文档中提到了Flex_Viewer的三个主要组成部分:A部分—组件列表;B部分—文件组织;C部分—数据层。接下来将对这三个部分进行详细介绍。 #### 二、A部分:组件列表 这部分包含了项目中的各种组件,包括但不限于配置...

    flex布局的使用方法.pdf

    未使用Flex布局时,元素按照常规流进行布局,可能需要使用浮动、绝对定位等方式进行对齐。示例代码中,`.center`内的三个粉色方块 `.left`, `.content`, `.right` 按照普通流左对齐。当启用了Flex布局后,通过`...

    高仿FlexLayout布局小程序源码.zip

    4. **小程序组件**:源码中可能使用了小程序提供的各种组件,如`&lt;view&gt;`、`&lt;scroll-view&gt;`等,理解它们的特性和用法对于布局至关重要。 5. **响应式设计**:高仿FlexLayout的源码可能会包含一些针对不同屏幕尺寸的...

    react-native-easy-flex:来自React Native的简单Flex控件

    @ farfarawaylabs / react-native-easy-flex React Native的布局组件 布局 也许我是唯一的一个,但是由于某种原因,我一直忘了哪个flex-... 再说一遍-如果这些组件不能做的事情,您总是可以将它们与常规Views和flex-b

    (十八)Flex4_自定义ActionScript组件

    不过,我们可以根据常规的自定义ActionScript组件流程来讲解相关知识点。 1. **创建ActionScript类**:首先,你需要创建一个继承自Flex组件基类的ActionScript类,如`spark.components.supportClasses.UIComponent`...

    flex整合ecplise开发-18页.pdf

    - `flex_src`:Flex项目的主要代码存放地,包括ActionScript和MXML组件文件。 - `ascode`:ActionScript源码,负责业务逻辑。 - `css`:样式表文件,定义Flex应用的外观。 - `view`:MXML组件文件,表示用户界面...

    Flex3界面布局中文教程--一路风尘制作

    不同于常规组件,Flex3中的控件不会自动对齐或分布,而是需要开发者明确指定布局模式——Absolute模式或constraint-based模式。 **Absolute模式**下,组件的位置由`x`、`y`坐标决定,坐标原点位于Canvas容器的左上...

    flex学习小记录

    由于描述是空的,具体内容无法直接引用,但我们可以根据常规的博客内容推测,博主可能讨论了Flex的基础概念、组件使用、布局管理、事件处理以及与其他技术(如后端服务)的集成等内容。 标签“源码”和“工具”提示...

    java整合flex开发应用

    【描述】虽然描述信息为空,但我们可以通过常规理解推测,作者可能分享了在实际项目中Java和Flex的整合经验,可能包括如何配置环境,设置数据通信机制,以及解决两者之间可能出现的问题。博文链接指向了ITEYE的一个...

    Flex股票分析图

    但根据常规做法,创建一个Flex股票分析图的源码大致如下: ```actionscript &lt;?xml version="1.0" encoding="utf-8"?&gt; &lt;!-- 填充股票数据 --&gt; 收盘价"/&gt; 开盘价"/&gt; 最高价"/&gt; 最低价"/&gt; ...

    IE debug Flex debug

    7. **兼容性测试**:由于Flash Player Debugger专注于调试,可能与其他非调试版本不同,因此在发布应用前,应确保在常规Flash Player环境下测试应用程序,以确保兼容性。 总之,"IE Debug Flex Debug"是一个针对...

    Flex

    2. **Spark和 Halo 组件**:Flex 4引入了Spark组件模型,提供了一套全新的、可自定义程度更高的组件,与早期的Halo组件相比,Spark组件更注重外观和行为的分离。Halo组件则更适合Flex 3及之前的版本。 3. **数据...

    flex air记录日志的实例

    它基于ActionScript 3.0,提供了丰富的用户界面组件和强大的数据访问功能。在Flex Air应用中,日志记录是调试和监控程序行为的关键工具。 1. 日志记录的目的: - **调试**:当程序出现问题时,通过查看日志可以...

    Flex Tree增加虚线连接

    在IT行业中,Flex Tree是一种常见的数据可视化组件,用于展示层级结构的数据,比如组织架构、文件系统或树形菜单。在Flex Tree中,连接线通常用来表示节点间的父子关系,而"Flex Tree增加虚线连接"则涉及到如何为...

Global site tag (gtag.js) - Google Analytics