▼ActionScript 2.0メモ▼
ローカル領域へのデータ保存


ローカル領域へのデータ保存を行うFlashを作成する。



ソースコード
SharedObjectEx.as
//ローカル領域へのデータ保存
class SharedObjectEx {
    private var textField:TextField;//テキストフィールド
    private var so:SharedObject;    //SharedObject
    
    //コンストラクタ
    public function SharedObjectEx(mc:MovieClip) {
        var ref:Object=this;

        //テキストフィールドの追加
        textField=addTextField(mc,"textField","",10,10,200,20);

        //ボタンの追加
        var button0:TextField=addButton(mc,"button0","書き込み",10,36,50,20);
        var button1:TextField=addButton(mc,"button1","読み込み",70,36,50,20);

        //マウスイベントの処理
        var mouseListener:Object=new Object();
        Mouse.addListener(mouseListener);
        mouseListener.onMouseDown=function() {
            var x:Number=Math.floor(mc._xmouse);
            var y:Number=Math.floor(mc._ymouse);
            //書き込みボタン
            if (10<x && x<10+50 && 36<y && y<36+20) {
                    ref.so.data.text=ref.textField.text;
                    ref.so.flush();                                                    
            }
            //読み込みボタン
            if (70<x && x<70+50 && 36<y && y<36+20) {
                    ref.textField.text=ref.so.data.text;
            }
        }

        //SharedObjectの取得
        so=SharedObject.getLocal("so");  
        textField.text=so.data.text;  
    }

    //テキストフィールドの追加
    private function addTextField(mc:MovieClip,name:String,text:String,
        x:Number,y:Number,w:Number,h:Number):TextField {
        mc.createTextField(name,mc.getNextHighestDepth(),x,y,w,h);
        mc[name].text      =text;   //テキスト
        mc[name].selectable=true;   //選択可
        mc[name].border    =true;   //ボーダー
        mc[name].type      ="input";//入力
        return mc[name];
    } 

    //ボタンの追加
    private function addButton(mc:MovieClip,name:String,text:String,
        x:Number,y:Number,w:Number,h:Number):TextField {
        mc.createTextField(name,mc.getNextHighestDepth(),x,y,w,h);
        mc[name].text           =text;    //テキスト
        mc[name].autoSize       ="center";//オートサイズ
        mc[name].selectable     =false;   //選択不可
        mc[name].border         =true;    //ボーダー
        mc[name].background     =true;    //背景色
        mc[name].backgroundColor=0xdddddd;
        return mc[name];
    }

    //メイン
    static function main() {
        var app:SharedObjectEx=new SharedObjectEx(_root);
    }
}


コンパイル
mtasc -main SharedObjectEx.as -swf SharedObjectEx.swf -version 7 -header 240:240:30




−戻る−