ファイルDL & UPLOAD テスト

by tepe forked from キーボード入力テスト (diff: 56)
操作方法、工夫した点、解説したい内容、こだわったところや参考文献のURL等を書いてください
書かない場合、クラス宣言までのコメント文から自動抽出します
♥0 | Line 103 | Modified 2010-12-28 16:03:50 | MIT License
play

ActionScript3 source code

/**
 * Copyright tepe ( http://wonderfl.net/user/tepe )
 * MIT License ( http://www.opensource.org/licenses/mit-license.php )
 * Downloaded from: http://wonderfl.net/c/xXRR
 */

// forked from tepe's キーボード入力テスト
package {
    import flash.display.*;
    import flash.events.KeyboardEvent;//キーボード入力取得
    import flash.text.*;//テキスト
    import flash.events.*;
    import flash.net.*;
    import flash.xml.*;
    //import flash.ui.*;
    
    public class Main extends Sprite {
           
        public var g:Sprite = new Sprite(); 
        public var t:TextField = new TextField();
        private var sock:Socket;
    
        public function Main() {
            
            /*
            //ソケット
            sock = new Socket();
            sock.addEventListener(Event.CONNECT,onConnect);//接続
            sock.addEventListener(IOErrorEvent.IO_ERROR,onIOError);//IOエラー
            sock.addEventListener(SecurityErrorEvent.SECURITY_ERROR, onSecError);
            sock.addEventListener(ProgressEvent.SOCKET_DATA,onSocData);
            */
            //テキストフィールドの設定
            //t.selectable = false;
            t.border =true;
            t.wordWrap = true;
            t.height = 200;
            t.width = 150;
            
            
            addChild(t);//描画リストに追加
            
            t.htmlText = "code 0";
            t.x = 0; t.y = 0;//座標
            
            //キーボード入力
            stage.addEventListener(KeyboardEvent.KEY_DOWN,onKeyDown);
            stage.addEventListener(KeyboardEvent.KEY_UP,onKeyUp);
            //stage.addEventListener
        }
       
       
        public function URLVariablesExample():void{
            var url:String = "http://ozmap.orz.hm//caution.jpg";
            var request:URLRequest = new URLRequest(url);
            var variables:URLVariables = new URLVariables();
            variables.Id = new Date().getTime();
            variables.Label = "guest";
            request.data = variables;
            request.method = URLRequestMethod.POST;
            navigateToURL(request);
            for(var s:String in variables){
                t.appendText(s);
                t.appendText(" ");
                t.appendText(variables[s]);
                t.appendText("\n");
            }

            
        }
        
        //接続イベント
        private function onConnect():void{
            t.htmlText = "on connect";
        }
        //IOエラーイベント
        private function onIOError():void{
            t.htmlText = "on IOError";
            
        }
        //セキュリティエラーイベント
        private function onSecError():void{
            t.htmlText = "on SecurityError";
        }
        
        private function onSocData():void{
            t.htmlText = "on SocketData";
        }




        
        //キーが押されたとき
        private function onKeyDown(e:KeyboardEvent):void {
            var n:Number = e.keyCode;
            var c:Number = e.charCode;
            var str:String;
            
            str = "aaa";
            t.htmlText = "k"+n+" c"+c+" on";
            if(e.shiftKey==true) t.htmlText += " +shift";
            if(e.ctrlKey==true) t.htmlText += " +ctrl";
            if(e.charCode == 97)URLVariablesExample();
            if(e.charCode == 98)URLLoader_loadExample();
            
        }
        
        //キーが離されたとき
        private function onKeyUp(e:KeyboardEvent):void {
            var n:Number = e.keyCode;
            var c:Number = e.charCode;
            t.htmlText = "k"+n+" c"+c+" off";
        }
          

        private var xmlTextField:TextField = new TextField();
        private var externalXML:XML;    
        //private var loader:URLLoader;
        private var loader:Loader = new Loader();
        

        public function URLLoader_loadExample():void{
            var request:URLRequest = new URLRequest("http://ozmap.orz.hm//caution.jpg");

            //loader = new URLLoader();
            
            try {
                loader.load(request);
            }
            catch (error:SecurityError)
            {
                trace("A SecurityError has occurred.");
            }

            loader.addEventListener(IOErrorEvent.IO_ERROR, errorHandler);
            loader.addEventListener(Event.COMPLETE, loaderCompleteHandler);
            
            loader.x = 20;
            loader.y = 20;
            loader.scaleX = 0.5;
            loader.scaleY = 0.5;
            stage.addChild(loader);
            

            
        }

        private function loaderCompleteHandler(event:Event):void {

                try {
                    //externalXML = new XML(loader.data);
                    //readNodes(externalXML);
                    //stage.addChild(loader);    
                } catch (e:TypeError) {
                    trace("Could not parse the XML file.");
                }
        }

        private function readNodes(node:XML):void {

                for each (var element:XML in node.elements()) {
                    xmlTextField.appendText(element.attributes()[0] + "\n");

                    readNodes(element);
                }    
        }

        private function errorHandler(e:IOErrorEvent):void {
            xmlTextField.text = "Had problem loading the XML File.";
        }
    }
}