ゆっくりのデスクトップマスコットを作る6


今回の更新
少ししゃべるようになった
画像の変更が可能に



おしゃべり機能の方はタイマーイベントで一定時間ごとにmp3を再生しているだけです。
あとはユーザーの不在状況が分かるイベントを利用したりしています。
詳しくはソース参照


画像の変更
リクエストに答えて作りました。これであなたのお気に入り画像がデスクトップマスコットに!!


解説

まずはメニューの追加

var imgChange:NativeMenuItem = myMenu.addSubmenu(new NativeMenu, "画像の変更");
var def:NativeMenuItem = new NativeMenuItem("デフォルト");
var load:NativeMenuItem = new NativeMenuItem("変更");
imgChange.submenu.addItem(def);
imgChange.submenu.addItem(load);
def.addEventListener(Event.SELECT, setDefaultImg);
load.addEventListener(Event.SELECT, changeImage);


次にデフォルト画像に設定するsetDefaultメソッド

private function setDefaultImg(event:Event):void{
                myImage.source="img/yukkur.png";
                local_data.data.imgPath = myImage.source;
}

ここではデフォルト画像のファイルパスを設定しているだけです。あと、そのパスの保存。


そして画像の変更

private function changeImage(event:Event):void{
	var file:File = new File();
                
       //呼び出すファイルの種類を制限する
         var filter:FileFilter = new FileFilter("画像ファイル" ,"*.png; *.gif; *.jpeg; *.jpg");
            
	//ブラウズが終了した時にloadを呼び出す
    	file.addEventListener(Event.SELECT, loadImage);
            
        	//ブラウズする
         file.browse([filter]);
}
        
private function loadImage(event:Event):void{
         //ブラウズで選択したファイルパスを設定
       	myImage.source = (event.target as File).nativePath;
    //ローカルストレージへの保存
        	local_data.data.imgPath = myImage.source;
}


ここではブラウズで表示するファイルの条件を指定して
ブラウズで選択したファイルのパスを表示し、そのパスを保存。


意外と簡単に出来てしまいました。


今回のソースとアプリ
ソース


画像の提供元