• ホーム
  • メモ
  • as3
  • AS3 flashvarsを利用してhtmlファイルからパラメータを受け取る

[PR] WEB制作会社PSYCOMMU

as3

AS3 flashvarsを利用してhtmlファイルからパラメータを受け取る

たまに使用するのでメモ。

AS2.0の時はそのまま何も難しいことなく使用できていたがAS3.0になって少しだけ複雑になった。

SWFファイルに読込まれた変数は、DisplayObject.loaderInfoプロパティのLoaderInfo.parametersプロパティに設定される模様。

【サンプルswf】

【Sample20091116.as】

	var flashvars = {
		name :"PANDAMA",
		url:'http://www.pandama.net/'
	};

下記コード30行から32行目が重要!

【Sample20091116.as】

package {

    import flash.display.*;
	import flash.events.*;  
	import flash.display.LoaderInfo;
    
	import flash.text.TextField;
	import flash.text.TextFormat;
	import flash.text.TextFieldAutoSize;
	import flash.text.TextFormatAlign;

	public class Sample20091116 extends Sprite {
		
		public function Sample20091116():void{
			
			stage.scaleMode=StageScaleMode.NO_SCALE;
			stage.align = StageAlign.TOP_LEFT;
			
			_init();
		
		}
		
		private function _init():void {
			
			/*
			 * htmlから受け取ったパラメーターをオブジェクトに入れる
			 * loaderInfo.parametersで受け取れる(要調)
			 * 連想配列で値を代入する
			 */
			
			var jsFrom:Object = loaderInfo.parameters;
			var name = jsFrom["name"];
			var url = jsFrom["url"];
			
			var format:TextFormat=new TextFormat();
			format.color=0x333333;
			format.size = 14;
			format.bold = true;
			
			var name_txt= new TextField();
			name_txt.width = 140;
			name_txt.autoSize = TextFieldAutoSize.LEFT;	//autoSizeを指定しないと高さが100pxになる
			name_txt.x = 10;
			name_txt.y = 10;
			name_txt.selectable=false;
			addChild(name_txt);
			
			name_txt.defaultTextFormat = format;
			name_txt.text = name;
			
			var url_txt= new TextField();
			url_txt.width = 140;
			url_txt.autoSize = TextFieldAutoSize.LEFT;	//autoSizeを指定しないと高さが100pxになる
			url_txt.x = 10;
			url_txt.y = 40;
			url_txt.selectable=false;
			addChild(url_txt);
			
			url_txt.defaultTextFormat = format;
			url_txt.text = url;
		
		}
		
	}
}

【参考サイト】

AS3 flashvarsを利用してhtmlファイルからパラメータを受け取るに対してコメントをする

Copyright 2009 PANDAMA. All rights reserved.
PANDAMA.com 掲載の記事・写真・図表など無断転載を禁止します。著作権はPANDAMA.comに属します。