Flex中如何利用mx:states和mx:State创建不同状态应用的例子
2012-10-12 15:40
579 查看
<?xml version="1.0" encoding="utf-8"?>
<mx:Application xmlns:mx="http://www.adobe.com/2006/mxml"
layout="vertical"
verticalAlign="middle"
backgroundColor="white">
<mx:states>
<mx:State name="login">
<mx:AddChild>
<mx:Form id="loginForm">
<mx:FormHeading label="Login" />
<mx:FormItem label="Username:">
<mx:TextInput id="log_username" />
</mx:FormItem>
<mx:FormItem label="Password:">
<mx:TextInput id="log_password"
displayAsPassword="true" />
</mx:FormItem>
<mx:FormItem>
<mx:Button label="Login" />
</mx:FormItem>
</mx:Form>
</mx:AddChild>
</mx:State>
<mx:State name="register">
<mx:AddChild>
<mx:Form id="registerForm">
<mx:FormHeading label="Register" />
<mx:FormItem label="Username:">
<mx:TextInput id="reg_username" />
</mx:FormItem>
<mx:FormItem label="Password:">
<mx:TextInput id="reg_password1"
displayAsPassword="true" />
</mx:FormItem>
<mx:FormItem label="Confirm
password:">
<mx:TextInput id="reg_password2"
displayAsPassword="true" />
</mx:FormItem>
<mx:FormItem>
<mx:Button label="Register" />
</mx:FormItem>
</mx:Form>
</mx:AddChild>
</mx:State>
</mx:states>
<mx:transitions>
<mx:Transition id="loginTransition"
fromState="*"
toState="login">
<mx:WipeDown target="{loginForm}"/>
</mx:Transition>
<mx:Transition id="registerTransition"
fromState="*"
toState="register">
<mx:WipeDown target="{registerForm}"/>
</mx:Transition>
</mx:transitions>
<mx:Script>
<![CDATA[
import mx.events.ItemClickEvent;
private function toggleButtonBar_itemClick(evt:ItemClickEvent):void {
currentState = evt.item.data;
}
]]>
</mx:Script>
<mx:Array id="dp">
<mx:Object data="" label="Default
state" />
<mx:Object data="login" label="Login" />
<mx:Object data="register" label="Register" />
</mx:Array>
<mx:ApplicationControlBar dock="true">
<mx:ToggleButtonBar id="toggleButtonBar"
dataProvider="{dp}"
itemClick="toggleButtonBar_itemClick(event);" />
</mx:ApplicationControlBar>
</mx:Application>
<mx:Application xmlns:mx="http://www.adobe.com/2006/mxml"
layout="vertical"
verticalAlign="middle"
backgroundColor="white">
<mx:states>
<mx:State name="login">
<mx:AddChild>
<mx:Form id="loginForm">
<mx:FormHeading label="Login" />
<mx:FormItem label="Username:">
<mx:TextInput id="log_username" />
</mx:FormItem>
<mx:FormItem label="Password:">
<mx:TextInput id="log_password"
displayAsPassword="true" />
</mx:FormItem>
<mx:FormItem>
<mx:Button label="Login" />
</mx:FormItem>
</mx:Form>
</mx:AddChild>
</mx:State>
<mx:State name="register">
<mx:AddChild>
<mx:Form id="registerForm">
<mx:FormHeading label="Register" />
<mx:FormItem label="Username:">
<mx:TextInput id="reg_username" />
</mx:FormItem>
<mx:FormItem label="Password:">
<mx:TextInput id="reg_password1"
displayAsPassword="true" />
</mx:FormItem>
<mx:FormItem label="Confirm
password:">
<mx:TextInput id="reg_password2"
displayAsPassword="true" />
</mx:FormItem>
<mx:FormItem>
<mx:Button label="Register" />
</mx:FormItem>
</mx:Form>
</mx:AddChild>
</mx:State>
</mx:states>
<mx:transitions>
<mx:Transition id="loginTransition"
fromState="*"
toState="login">
<mx:WipeDown target="{loginForm}"/>
</mx:Transition>
<mx:Transition id="registerTransition"
fromState="*"
toState="register">
<mx:WipeDown target="{registerForm}"/>
</mx:Transition>
</mx:transitions>
<mx:Script>
<![CDATA[
import mx.events.ItemClickEvent;
private function toggleButtonBar_itemClick(evt:ItemClickEvent):void {
currentState = evt.item.data;
}
]]>
</mx:Script>
<mx:Array id="dp">
<mx:Object data="" label="Default
state" />
<mx:Object data="login" label="Login" />
<mx:Object data="register" label="Register" />
</mx:Array>
<mx:ApplicationControlBar dock="true">
<mx:ToggleButtonBar id="toggleButtonBar"
dataProvider="{dp}"
itemClick="toggleButtonBar_itemClick(event);" />
</mx:ApplicationControlBar>
</mx:Application>
相关文章推荐
- Flex中如何利用mx:states和mx:State创建不同状态应用的例子
- Flex中如何利用mx.utils.UIDUtil类的createUID()函数创建UID的例子
- Flex如何创建状态States并掌握几个常用控件用法
- Flex中如何利用树形控件(Tree Control)和SWFLoader控件创建简单图片相册的例子
- Flex如何创建状态States并掌握几个常用控件用法
- Flex中如何利用PopUpButton控件创建一个弹出TitleWindow的例子
- Flex应用中如何利用source属性嵌入字体的例子
- 利用ToolTipManager类检测并取得Flex应用中当前ToolTip状态/内容的例子
- Flex中如何利用mx:HTTPService标签读取文本文件中的name/value这样的一对数据并显示在DataGrid中的例子
- Flex中用state来表示不同的状态的经典的例子
- Flex中如何利用Style Sheet和<mx:style>标签嵌入图片/图标的例子
- Flex中如何利用PopUpManager类创建一个弹出Image控件的例子
- Flex中如何利用PopUpButton控件创建一个弹出TitleWindow的例子
- Flex中如何创建自定义排序DataGrid控件的例子
- Flex中如何通过设置editable属性控制NumericStepper控件可编辑/不可编辑状态的例子
- Flex中如何利用ActionScript代替mx:Sequence标签实现顺序效果
- Flex中如何判断DateField控件状态为opened还是closed的例子
- Flex的VideoDisplay控件中如何创建和使用ActionScript暗点的例子
- Flex中如何利用getTextField事件和numLines属性,计算出TextArea控件中内容的行数的例子
- Flex中如何给depthColors样式设置一个颜色数组给树Tree控件不同层设置不同颜色的例子