(flex)一个简单的flex登陆实例

下面是一个flex简单实例
开发工具:flex buider3
主要知识点:事件请求转发,其它相关信息有注释
首先在src下新建一个组件,命名为loginForm.mxml,在这个组件里,有两个标签,两个文件域,和一个按钮,相关代码如下:

<? xml version = " 1.0 "  encoding = " utf-8 " ?>
< mx:Panel xmlns:mx = " http://www.adobe.com/2006/mxml "  layout = " absolute "  width = " 400 "  height = " 226 "  borderColor = " #88F0DE "  title = " 用户登陆 "  fontSize = " 14 " >
    
< mx:Metadata >
        
// 使用系统事件进行提交        
        
// [Event(name="loginEvent",type="flash.events.Event")]    
        
// 使用自定义事件,在org.loginForm.LoginFormEvent里
        [Event(name = " loginEvent " ,type = " org.loginForm.LoginFormEvent " )]    
    
</ mx:Metadata >
    
< mx:Script >
        
<! [CDATA[
            
import  org.loginForm.LoginFormEvent; 
            internal function onClick(evt:MouseEvent):
void {
                
//系统事件进行请求转发
                
//this.dispatchEvent(new Event("loginEvent"));
                
//自定义事件请求转发
                var lf:LoginFormEvent = new LoginFormEvent("loginEvent");
                
//把得到的用户名,密码传到事件里
                lf.username = userName.text;
                lf.password 
= password.text;
                
this.dispatchEvent(lf);
            }

        ]]
>
    
</ mx:Script >
    
< mx:Label x = " 48 "  y = " 38 "  text = " 用户名: "  width = " 70 "  height = " 26 "  fontSize = " 15 " />
    
< mx:Label x = " 48 "  y = " 92 "  text = " 密  码: "  width = " 70 "  height = " 25 "  fontSize = " 15 " />
    
< mx:TextInput x = " 126 "  y = " 36 "  id = " userName " />
    
< mx:TextInput x = " 126 "  y = " 90 "  id = " password "  displayAsPassword = " true " />
    
< mx:Button x = " 228 "  y = " 142 "  label = " 登陆 "  fontSize = " 15 "  id = " login "  click = " onClick(event) " />     
</ mx:Panel >

下面是处理表单的actionscript代码:包为org.LoginForm ,名为LoginFormEvent,该类需继承Event

package  org.loginForm
{
    
import flash.events.Event;

    
public class LoginFormEvent extends Event
    
{
        
public var username:String = "";
        
public var password:String = "";
        
public function LoginFormEvent(type:String)
        
{
            
super(type, falsefalse);
        }

        
    }

}

事件测试类,把loginForm.mxml添加到,名为event2.mxml  mxml application文件里

<? xml version = " 1.0 "  encoding = " utf-8 " ?>
< mx:Application xmlns:mx = " http://www.adobe.com/2006/mxml "  layout = " absolute "  xmlns:ns1 = " * " >
    
< mx:Script >
        
<! [CDATA[
            
import  org.loginForm.LoginFormEvent;
            
import  mx.controls.Alert;
            
// internal function login(evt:Event):void{
                
// Alert.show("你登陆成功","提示");
            
// }
            internal function login(evt:LoginFormEvent): void {
                
if(evt.username == "gao" && evt.password == "qin"){
                    Alert.show(
"你登陆成功","提示");
                }
else{
                    Alert.show(
"你登陆失败");
                }

            }

            
public  function init(): void {                
                fLogin.addEventListener(
"loginEvent",login);
            }

        ]]
>
    
</ mx:Script >
    
< ns1:loginForm x = " 34 "  y = " 90 "  id = " fLogin "  loginEvent = " login(event) " >
    
</ ns1:loginForm >     
</ mx:Application >
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值