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开发的常规理解。在实际项目中,你将需要解压文件,查看源代码,理解其架构和实现细节,以获取更深入的知识。同时,对于初学者,这是一个很好的实践案例,可以加深对...
微信小程序的FlexLayout基于CSS3的Flexbox模型,允许开发者更加灵活地控制组件的排列、对齐和分布。下面我们将深入探讨FlexLayout布局的相关知识点。 1. **Flexbox布局模型** Flexbox(Flexible Box)布局模型是...
描述中提到的步骤是执行这个Flex项目的常规流程: 1. **下载并解压**:用户首先需要从某个来源下载名为“flex-demo”的压缩包,然后将其解压缩到本地计算机上。这通常包含项目的所有源代码、资源文件和其他配置文件...
#### 四、使用ActionScript重写组件的常规步骤 1. **创建基于标记的皮肤**:如果需要,先为组件创建皮肤文件。 2. **创建ActionScript类**: - **继承基类**:通常是从`UIComponent`或其他Flex组件类继承。 - **...
下面将详细介绍这些常规的 Flex 控件和组件: 1. Button:Button 是最基本的动作触发器,用于响应用户的单击事件。它可以包含文字标签和图标,用于指示用户执行特定操作。 2. ButtonBar:ButtonBar 是一组逻辑相关...
文档中提到了Flex_Viewer的三个主要组成部分:A部分—组件列表;B部分—文件组织;C部分—数据层。接下来将对这三个部分进行详细介绍。 #### 二、A部分:组件列表 这部分包含了项目中的各种组件,包括但不限于配置...
未使用Flex布局时,元素按照常规流进行布局,可能需要使用浮动、绝对定位等方式进行对齐。示例代码中,`.center`内的三个粉色方块 `.left`, `.content`, `.right` 按照普通流左对齐。当启用了Flex布局后,通过`...
4. **小程序组件**:源码中可能使用了小程序提供的各种组件,如`<view>`、`<scroll-view>`等,理解它们的特性和用法对于布局至关重要。 5. **响应式设计**:高仿FlexLayout的源码可能会包含一些针对不同屏幕尺寸的...
@ farfarawaylabs / react-native-easy-flex React Native的布局组件 布局 也许我是唯一的一个,但是由于某种原因,我一直忘了哪个flex-... 再说一遍-如果这些组件不能做的事情,您总是可以将它们与常规Views和flex-b
不过,我们可以根据常规的自定义ActionScript组件流程来讲解相关知识点。 1. **创建ActionScript类**:首先,你需要创建一个继承自Flex组件基类的ActionScript类,如`spark.components.supportClasses.UIComponent`...
- `flex_src`:Flex项目的主要代码存放地,包括ActionScript和MXML组件文件。 - `ascode`:ActionScript源码,负责业务逻辑。 - `css`:样式表文件,定义Flex应用的外观。 - `view`:MXML组件文件,表示用户界面...
不同于常规组件,Flex3中的控件不会自动对齐或分布,而是需要开发者明确指定布局模式——Absolute模式或constraint-based模式。 **Absolute模式**下,组件的位置由`x`、`y`坐标决定,坐标原点位于Canvas容器的左上...
由于描述是空的,具体内容无法直接引用,但我们可以根据常规的博客内容推测,博主可能讨论了Flex的基础概念、组件使用、布局管理、事件处理以及与其他技术(如后端服务)的集成等内容。 标签“源码”和“工具”提示...
【描述】虽然描述信息为空,但我们可以通过常规理解推测,作者可能分享了在实际项目中Java和Flex的整合经验,可能包括如何配置环境,设置数据通信机制,以及解决两者之间可能出现的问题。博文链接指向了ITEYE的一个...
但根据常规做法,创建一个Flex股票分析图的源码大致如下: ```actionscript <?xml version="1.0" encoding="utf-8"?> <!-- 填充股票数据 --> 收盘价"/> 开盘价"/> 最高价"/> 最低价"/> ...
7. **兼容性测试**:由于Flash Player Debugger专注于调试,可能与其他非调试版本不同,因此在发布应用前,应确保在常规Flash Player环境下测试应用程序,以确保兼容性。 总之,"IE Debug Flex Debug"是一个针对...
2. **Spark和 Halo 组件**:Flex 4引入了Spark组件模型,提供了一套全新的、可自定义程度更高的组件,与早期的Halo组件相比,Spark组件更注重外观和行为的分离。Halo组件则更适合Flex 3及之前的版本。 3. **数据...
它基于ActionScript 3.0,提供了丰富的用户界面组件和强大的数据访问功能。在Flex Air应用中,日志记录是调试和监控程序行为的关键工具。 1. 日志记录的目的: - **调试**:当程序出现问题时,通过查看日志可以...
在IT行业中,Flex Tree是一种常见的数据可视化组件,用于展示层级结构的数据,比如组织架构、文件系统或树形菜单。在Flex Tree中,连接线通常用来表示节点间的父子关系,而"Flex Tree增加虚线连接"则涉及到如何为...