リプタクのもう覚えられません
Google
Web サイト内
topmemo ▶ 2枚の画像で拡大縮小サンプル

ActionScript

2枚の画像で拡大縮小サンプル

2枚の画像を入れ替えて拡大縮小するサンプル。

【サンプル】画像クリックで拡大縮小

JavaScriptを有効にし、最新のFlashPlayerをインストールお願いしますGet Adobe Flash player

考え方
【as3】

var p100_mc:Cla_P100 = new Cla_P100();//ビットマップ画像配置済みオブジェクト
var p200_mc:Cla_P200 = new Cla_P200();//ビットマップ画像配置済みオブジェクト

var flag_Scale:int = 0;//100%=0, 200%=1

func_Const();
function func_Const(){
	
	//画像配置
	addChild(p100_mc);
	p100_mc.x = 300;
	p100_mc.y = 225;
	
	//クリックリスナー登録
	stage.addEventListener(MouseEvent.CLICK,func_stage_CLICK);
}

//クリック
function func_stage_CLICK(e:MouseEvent):void{
	
	//クリックリスナー解除(2度押し防止)
	stage.removeEventListener(MouseEvent.CLICK,func_stage_CLICK);
	
	//200→100用画像入れ替え
	if(flag_Scale == 1){
		removeChild(p200_mc);
		addChild(p100_mc);
		p100_mc.x = 300;
		p100_mc.y = 225;
		p100_mc.scaleX = 2.0;
		p100_mc.scaleY = 2.0;
	}
	
	//タイマー
	var my_timer:Timer= new Timer(1000 * 0.02,10);//0.2秒10回
	my_timer.addEventListener(TimerEvent.TIMER,my_timer_f);
	my_timer.addEventListener(TimerEvent.TIMER_COMPLETE,my_timer_c_f);
	my_timer.start();
	
	//タイマーイベント
	function my_timer_f(e:TimerEvent):void {
		
		//サイズ変更
		if(flag_Scale == 0){//100→200用
			p100_mc.scaleX += 0.1;
			p100_mc.scaleY += 0.1;
		}else if(flag_Scale == 1){//200→100用
			p100_mc.scaleX -= 0.1;
			p100_mc.scaleY -= 0.1;
		}
		
		e.updateAfterEvent();
	}
	
	//タイマーコンプリート
	function my_timer_c_f(e:TimerEvent):void {
		
		//画像入れ替えとフラグセット
		if(flag_Scale == 0){//100→200用
			removeChild(p100_mc);
			addChild(p200_mc);
			p200_mc.x = 300;
			p200_mc.y = 225;
			flag_Scale = 1;
		}else if(flag_Scale == 1){//200→100用
			p100_mc.scaleX = 1.0;
			p100_mc.scaleY = 1.0;
			flag_Scale = 0;
		}
		
		//タイマー解除
		my_timer.removeEventListener(TimerEvent.TIMER,my_timer_f);
		my_timer.removeEventListener(TimerEvent.TIMER_COMPLETE,my_timer_c_f);
		
		//リスナー登録
		stage.addEventListener(MouseEvent.CLICK,func_stage_CLICK);
		
		e.updateAfterEvent();
	}	
	
}



last update 2011.3.28
参考・出典等
「特に無し」

▲page top

topmemogalleryblogtestaboutlinksmail
Copylight(C)2008-2011 Riptac. All Rights Reserved.