万卷书   首页 > 电脑书籍 > Flash > Flash 与 Asp结合使用实例之二 聊天室的实现
 
 

  B、Flash部分


 

  1、在属性面板上,将第一帧的“帧标签”设为“login”。在第一帧的Action面板中加上:
Stop();


 

  2、如图1所示,在场景中放置两个文本框,两个button,其中上面一个文本框的设置如图2所示,另一个文本框的设置如图3所示。

 

  3、新建一个组件,命名为“loginloop1”,在第一帧的Action面板中加上下面语句:

 


 

_root.count = 0;   
stop();
在第5帧上插入关键帧,在Action面板上加入下面的语句:
if (!(_root.userlogin)) {                                //注释1
 _root.count = _root.count + 1;
 if (_root.count > 50)                              //注释2
  {
   _root.gotoAndPlay("netfalse");
   _root.loginloop.gotoAndStop(1);
  }
 _root.loginloop.gotoAndPlay(2);
}
  if (_root.userlogin == "success")               //注释3
 {
  _root.txttime = _root.userlogin;
  _root.gotoAndPlay("main");
  _root.loginloop.gotoAndStop(1);
 }
 if (_root.userlogin == "unsuccess")                 //注释4
 {
   _root.gotoAndPlay("loginfalse");
   _root.loginloop.gotoAndStop(1);
 }


 

  注释1:判断结果是否已经从服务器端返回,不是的话,计数器加一。
  注释2:判断计数器是否已经到50,是的话,跳转到网络超时界面。
  注释3:判断返回的结果是否位success,是则跳转到聊天的主界面。
  注释4:若返回的结果为unsuccess,跳转到登陆出错界面。


 

  4、将组件“loginloop1”从图库中拖到场景中,将其实例名设为“loginloop”。


 

  5、在场景中登陆Button的Action面板中增加下面的语句:


 

on (release) {
 if (length(_root.username) == 0) {                            //注释1
  _root.username = "请输入名字";
 } else if (length(_root.userpwd) == 0) {
  _root.username = "请输入密码";
 }
 if ((length(_root.username) != 0)and (length(_root.userpwd) != 0)) {         //注释1
  loadVariables("login.htm?username=" add _root.username add "&userpwd=" add _root.userpwd, this, "POST");
  _root.loginloop.gotoAndPlay(2);  
  timeflag = 0;
 }
}


 

  注释1:判断用户名和密码是否为空。
  注释2:用户名和密码不为空,向服务器端发送用户名和密码。

 

 

上一页 下一页