最近在学习Flex,用Flex做了个简单的登陆控件。
frmLogin.mxml



代码:
1
<?xml version="1.0" encoding="utf-8"?>
2
<mx:Canvas xmlns:mx="http://www.adobe.com/2006/mxml" width="250" height="170">
3
<mx:Panel x="0" y="0" width="250" height="170" layout="absolute" title="登陆" fontSize="15" id="panel1" visible="true">
4
<mx:Label x="10" y="14" text="用户名" fontWeight="bold"/>
5
<mx:Label x="10" y="42" text="密码" fontWeight="bold"/>
6
<mx:TextInput x="71" y="12" width="149" height="21" fontSize="10" id="username"/>
7
<mx:TextInput x="71" y="40" width="149" height="21" displayAsPassword="true" fontSize="10" id="userpass"/>
8
<mx:ControlBar height="50" y="74" width="230" horizontalAlign="center" verticalAlign="top">
9
<mx:Button label="登陆" fontSize="12" id="button_login" click="button_login_click()"/>
10
<mx:Button label="注册" fontSize="12" id="button_reg" click="button_reg_click()"/>
11
</mx:ControlBar>
12
</mx:Panel>
13
<mx:Panel x="0" y="0" width="250" height="170" layout="absolute" title="已登陆" fontSize="15" id="panel2" visible="false">
14
<mx:Label x="11" y="25" text="欢迎你" fontSize="22" fontWeight="bold"/>
15
<mx:Label x="92" y="25" fontSize="22" fontWeight="bold" width="128" id="label_username" color="#F64617" text="Vincent"/>
16
<mx:ControlBar height="45" y="89" horizontalAlign="center" verticalAlign="top">
17
<mx:Button label="个人信息" fontSize="12" id="button_detail" click="button_detail_click()"/>
18
<mx:Button label="退出登陆" fontSize="12" fontWeight="bold" id="button_logout" click="button_logout_click()"/>
19
</mx:ControlBar>
20
</mx:Panel>
21
<mx:Metadata>
22
[Event(name="loginSucceed",type="vincent.flex.controls.login.events.LoginSucceedEvent")]
23
[Event(name="loginFail",type="flash.events.Event")]
24
[Event(name="logout",type="flash.events.Event")]
25
[Event(name="showUserDetail",type="flash.events.Event")]
26
[Event(name="doRegister",type="flash.events.Event")]
27
</mx:Metadata>
28
<mx:Script>
29
<
144
]]>
145
</mx:Script>
146
</mx:Canvas>
147
登陆成功事件 LoginSucceedEvent.as
1
package vincent.flex.controls.login.events
2

{
3
import flash.events.Event;
4
5
import vincent.flex.controls.login.User;
6
7
public class LoginSucceedEvent extends flash.events.Event
8
{
9
public function LoginSucceedEvent(type:String,
10
bubbles:Boolean = false,
11
cancelable:Boolean = false,
12
oldX:Number = NaN, oldY:Number = NaN)
13
{
14
super(type, bubbles, cancelable);
15
}
16
public var user:User;
17
}
18
}
User.as:
1
package vincent.flex.controls.login
2

{
3
public class User
4
{
5
public function User()
6
{
7
}
8
public var userId:int;
9
public var userName:String;
10
public var userLevel:String;
11
12
}
13
}
FlexTest01.mxml:
1
<?xml version="1.0" encoding="utf-8"?>
2
<mx:Application xmlns:mx="http://www.adobe.com/2006/mxml" layout="absolute" height="488" width="746" xmlns:ns1="*">
3
<mx:Script>
4
<
7
import vincent.flex.controls.login.events.*;
8
9
public function doLoginSucceed(e:LoginSucceedEvent):void
10
{
11
Alert.show("Welcome!");
12
}
13
14
]]>
15
</mx:Script>
16
<ns1:frmLogin x="248" y="100" id="winlogin" loginSucceed="doLoginSucceed(event)">
17
</ns1:frmLogin>
18
</mx:Application>
posted on 2008-06-16 10:52
聪少 阅读(779)
评论(0) 编辑 收藏