LoginFormEvent.as
package com
{
import flash.events.Event;
public class LoginFormEvent extends Event
{
public var name:String="";
public var pwd:String="";
public function LoginFormEvent(type:String, bubbles:Boolean=false, cancelable:Boolean=false)
{
super(type, bubbles, cancelable);
}
}
}
LoginForm.mxml
<?xml version="1.0" encoding="utf-8"?>
<mx:Panel xmlns:mx="http://www.adobe.com/2006/mxml" layout="absolute" width="420" height="298" borderColor="#1E27E7" title="Login Form">
<mx:Metadata>
[Event(name="loginEvent",type="com.LoginFormEvent")]
//自定义事件,用元数据的方式
</mx:Metadata>
<mx:Script>
<![CDATA[
import com.LoginFormEvent;
internal function onClick(evt:MouseEvent):void{
var e:LoginFormEvent=new LoginFormEvent("loginEvent");
e.name=txtName.text;
e.pwd=txtPwd.text;
//dispatchEvent(new LoginFormEvent("loginEvent"));
dispatchEvent(e);
}
]]>
</mx:Script>
<mx:Label x="75" y="70" text="user:"/>
<mx:Label x="75" y="114" text="pwd:" alpha="1.0"/>
<mx:TextInput x="132" y="68" id="txtName"/>
<mx:TextInput x="132" y="112" id="txtPwd" displayAsPassword="true"/>
<mx:Button x="227" y="156" label="Login" borderColor="#F1DCDC"
click="onClick(event)" />
</mx:Panel>
EventMXML.mxml
<?xml version="1.0" encoding="utf-8"?>
<mx:Application xmlns:mx="http://www.adobe.com/2006/mxml" layout="absolute" xmlns:ns1="*"
creationComplete="init()"
>
<mx:Script>
<![CDATA[
import mx.controls.Alert;
import com.LoginFormEvent;
internal function login(evt:LoginFormEvent):void{
if((evt.name=="xiaoqiang") && (evt.pwd=="123"))
Alert.show("您已经成功登录","提示");
else
Alert.show("用户名或密码有错误","提示");
}
// internal function init():void{
// var e:LoginFormEvent=new LoginFormEvent("loginEvent");
// e.name="dd";
// e.pwd="ff";
// //dispatchEvent(new LoginFormEvent("loginEvent"));
// loginform.dispatchEvent(e);
// //var e:LoginFormEvent=new LoginFormEvent("loginEvent");
// //loginform.addEventListener("loginEvent",login);//等同于loginform里加loginEvent=login()
// }
]]>
</mx:Script>
<ns1:LoginForm x="43" y="51" id="loginform" loginEvent="login(event)" >
</ns1:LoginForm>
</mx:Application>
浙公网安备 33010602011771号