近期学习flash as3总结

发布时间:2019-09-20 07:36:53编辑:auto阅读(1760)

    最近看到RIA比较火,也想凑个热闹,把最近几天的学习心得记录下来
    给自己看,如果能对新人有所帮助那是最好的,老手就不用看了
     
    开发环境
           flash cs3 professional 和flex 3比较
           flex 3 比较符合程序员的习惯,尤其是对Java程序员来说,Eclipse 太熟悉了,不过我觉得不能开发多帧的程序是flex 的最大缺点,也可能我孤陋寡闻,没找到开发多帧程序的方式
           因为是新手上路,所以弄了几个非常简单的小东西,但弄来弄去还是单帧,不爽
           还是选了flash cs3 虽然不符合程序员的习惯,但多帧对我吸引力太大了,因为那样才是真正的应用程序式的开发。
           下面主要就flash cs3中开发写一点心得:
     
            1、最开始最大的困难就是不知道脚本和动画如何联系起来,其实很简单,先建个flash (as3)文件,保存为ConnectSrv.fla(名字自己起),再建一个同名的as3文件,保存为ConnectSrv.as ,然后在ConnectSrv.fla 的界面上“属性面板“有个文档类:里面添上ConnectSrv就把动画和脚本联系起来了。
            2、在程序中调用按钮,要打开“窗口“菜单里面的“组件“窗口,快捷键是Ctrl+F7在user interface中找到Button 然后拖到右边的库中,才能在程序中调用fl.controls.Button 因为这个小东西是组件。
            3、下面做个Flash|+ JavaServlet的小的通讯Demo
                   as代码如下:
    package{
      import flash.display.Sprite;
      import flash.text.TextField;
      import fl.controls.Button;
      import flash.events.Event;
      import flash.events.MouseEvent;
      import flash.net.URLRequest;
      import flash.net.URLLoader;
      import flash.net.URLRequestMethod;
      import flash.net.URLLoaderDataFormat;
      import flash.events.IEventDispatcher;
      import flash.net.URLVariables;
        
      public class ConnectSrv extends Sprite{
        public var connectBtn:Button;
        public var msg:TextField;
        public var _loader:URLLoader;
        public function ConnectSrv(){
          connectBtn = new Button();
          connectBtn.x = 50;
          connectBtn.y = 150;
          connectBtn.addEventListener(MouseEvent.CLICK,onClickConBtn);        //按钮的消息处理
          addChild(connectBtn);
          msg = new TextField();
          msg.x = 100;
          msg.y = 200;
          msg.text = "成功啦"
          addChild(msg);
        }
        public function onClickConBtn(e:MouseEvent){
          _loader = new URLLoader();
          _loader.dataFormat = URLLoaderDataFormat.VARIABLES;
          configListeners(_loader);
          var par:URLVariables = new URLVariables();
          par.username = "alvetjook";
          par.password = "2222";
          var req:URLRequest = new URLRequest("http://localhost:8080/flashT/Rev");
          req.data = par;
          req.method = URLRequestMethod.GET;
          try {
            _loader.load(req);
          }catch(error:Error){
            msg.text = "出错了";
          }
        }
        public function configListeners(dispatcher:IEventDispatcher):void{
          dispatcher.addEventListener(Event.COMPLETE,loadHandler);
        }
        public function loadHandler(e:*):void{
          switch (e.type){
            case Event.COMPLETE:
              msg.text = "完成";
              break;
          }
        }
      }
    }

关键字