<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>blog.flasia.com &#187; ActionScript 3.0</title>
	<atom:link href="http://blog.flasia.com/archives/category/actionscript3/feed" rel="self" type="application/rss+xml" />
	<link>http://blog.flasia.com</link>
	<description>[object MainTimeline]</description>
	<lastBuildDate>Sat, 13 Feb 2010 08:48:19 +0000</lastBuildDate>
	<generator>http://wordpress.org/?v=2.8.6</generator>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
			<item>
		<title>다른 도메인(서버)의 파일을 로드할 때 LoaderContext의 설정</title>
		<link>http://blog.flasia.com/archives/1351</link>
		<comments>http://blog.flasia.com/archives/1351#comments</comments>
		<pubDate>Mon, 23 Nov 2009 01:52:09 +0000</pubDate>
		<dc:creator>Siaa</dc:creator>
				<category><![CDATA[ActionScript 3.0]]></category>
		<category><![CDATA[applicationDomain]]></category>
		<category><![CDATA[checkPolicyFile]]></category>
		<category><![CDATA[Loader]]></category>
		<category><![CDATA[LoaderContext]]></category>
		<category><![CDATA[securityDomain]]></category>

		<guid isPermaLink="false">http://blog.flasia.com/?p=1351</guid>
		<description><![CDATA[요즘, XML 파일에 각종 정보를 담아두고 플래시에서는 XML 파일을 로드한 뒤 로드된 데이터를 이용하는 무비 제작이 많은 편인데&#8230;
이 경우, SWF 파일에서 다른 도메인(서버)에 있는  [...]]]></description>
			<content:encoded><![CDATA[<p>요즘, XML 파일에 각종 정보를 담아두고 플래시에서는 XML 파일을 로드한 뒤 로드된 데이터를 이용하는 무비 제작이 많은 편인데&#8230;<br />
이 경우, SWF 파일에서 다른 도메인(서버)에 있는 이미지파일을 로드하려고 할 경우, 가끔 에러가 나오기도 한다.<br />
물론, crossdomain.xml 파일도 이상 없이 설정해 놓았다.<br />
상황을 살펴보면,</p>
<p>1. SWF 파일이 있는 도메인(서버)과 다른 도메인(서버)에 XML 파일과 이미지파일이 있는 경우.<br />
<img class="alignnone size-full wp-image-1353" title="LoaderContext Case1" src="http://blog.flasia.com/wp-content/uploads/2009/11/LoaderContext_case1.png" alt="LoaderContext Case1" width="500" height="200" /></p>
<pre class="brush:ActionScript">var url:URLRequest = new URLRequest("http://www.AAA.com/data.xml");
var loader:Loader = new Loader();
loader.load(url);</pre>
<p>위의 소스로 문제없이 이미지파일이 로드된다.<br />
<span id="more-1351"></span></p>
<p>2. SWF 파일이 있는 도메인(서버)에 XML 파일이 있고 다른 도메인(서버)에 이미지파일이 있는 경우.<br />
<img class="alignnone size-full wp-image-1354" title="LoaderContext Case2" src="http://blog.flasia.com/wp-content/uploads/2009/11/LoaderContext_case2.png" alt="LoaderContext Case2" width="500" height="200" /><br />
이 경우 1번에서 사용한 소스로는 이미지파일이 로드되지 않는다.<br />
이유는, LoaderContext 클래스를 매개변수로 전달하지 않아서인데&#8230;<br />
아래 소스로 수정하면 이미지파일이 로드된다.</p>
<pre class="brush:ActionScript">var context:LoaderContext = new LoaderContext();
context.checkPolicyFile = true;
var url:URLRequest = new URLRequest("http://www.BBB.com/data.xml");
var loader:Loader = new Loader();
loader.load(url, context);</pre>
<hr />
<div style="margin: 4px 0px; padding: 4px 10px; background-color: #f0f0f0;"><strong><em>LoaderContext 클래스란,</em></strong><br />
Loader 클래스의 load() 또는 loadBytes() 메서드를 통해 외부 파일을 로드 할 때 매개 변수로 사용되는 클래스입니다.<br />
LoaderContext 클래스에는 세가지 속성이 있는데, 각 속성에 대해 간단히 알아보면</p>
<ul>
<li><em>applicationDomain</em> : 로드 한 SWF 파일(부모)과 로드 된 SWF 파일(자식)의 ApplicationDomain에 대한 관계설정을 합니다.</li>
<li><em>checkPolicyFile</em> : SWF 파일이 있는 도메인(서버)과 다른 도메인(서버)에 있는 이미지파일(SWF파일 제외)등을 로드할 경우 설정합니다.<br />
true로 설정하면 이미지파일이 있는 도메인(서버)에서 크로스도메인(crossdomain)정책파일을 확인하고, 보안정책을 체크하게 됩니다. 체크에 이상이 없을 경우 대상 이미지파일을 엑세스 할 수 있게 됩니다.<br />
즉, BitmapData.draw()함수등을 사용해서 대상 이미지 데이터를 가공할 수 있습니다.</li>
<li><em>securityDomain</em> : 이 속성은 Loader.load() 작업에 사용할 보안 도메인을 지정합니다. 이 속성은 이미지가 아닌 SWF 파일을 로드할 때만 사용합니다.</li>
</ul>
<p>더욱 자세한 내용은 아래 내용을 참고</p>
<ul>
<li><a href="http://livedocs.adobe.com/flash/9.0_kr/ActionScriptLangRefV3/flash/system/LoaderContext.html" target="_blank">http://livedocs.adobe.com/flash/9.0_kr/ActionScriptLangRefV3/flash/system/LoaderContext.html</a></li>
<li><a href="http://livedocs.adobe.com/flex/3/html/help.html?content=05B_Security_08.html" target="_blank">http://livedocs.adobe.com/flex/3/html/help.html?content=05B_Security_08.html</a></li>
</ul>
</div>
<hr />
다른 도메인(서버)에 있는 XML 파일이 로드되면 대상 도메인(서버)의 정책파일이 확인되었기 때문에 LoaderContext  클래스를 매개변수로 넘겨주지 않아도 이미지파일에 대한 엑세스가 가능해지는 것일까? 아니면 XML 파일과 이미지파일이 같은 도메인(서버)에 있기 때문에 정책파일을 확인하지 않아도 되는 것일까?<br />
전자일 가능성이 더 큰 거 같은데&#8230;<br />
자세한 이유를 아시는 분 계시면 좀 알려 주세요;;;</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.flasia.com/archives/1351/feed</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>[AS 3.0] 3자리마다 콤마(,) 넣어주기</title>
		<link>http://blog.flasia.com/archives/606</link>
		<comments>http://blog.flasia.com/archives/606#comments</comments>
		<pubDate>Tue, 24 Mar 2009 03:22:07 +0000</pubDate>
		<dc:creator>Siaa</dc:creator>
				<category><![CDATA[ActionScript 3.0]]></category>
		<category><![CDATA[3자리]]></category>
		<category><![CDATA[ActionScript]]></category>
		<category><![CDATA[Comma]]></category>
		<category><![CDATA[Flash]]></category>
		<category><![CDATA[콤마]]></category>

		<guid isPermaLink="false">http://blog.flasia.com/?p=606</guid>
		<description><![CDATA[숫자를 통화의 단위(원, 엔&#8230;)로 쓰게 되는 경우가 있는데, 이럴 경우 3자리마다 콤마(,)를 찍어줘야 한다.
하지만, ActionScript에서는 이런 경우 제공되는 메서드가 없기 때문 [...]]]></description>
			<content:encoded><![CDATA[<p>숫자를 통화의 단위(원, 엔&#8230;)로 쓰게 되는 경우가 있는데, 이럴 경우 3자리마다 콤마(,)를 찍어줘야 한다.<br />
하지만, ActionScript에서는 이런 경우 제공되는 메서드가 없기 때문에 직접 만들어 주어야 하는데, 아래가 그 함수. <span id="more-606"></span></p>
<pre class="brush:ActionScript">
//AS 2.0
String.prototype.addCommas = function() {
	var _length = this.length;
	var _str = "";
	for (var i = 0; i <= _length; ++i) {
		_str = this.charAt(_length - i) + _str;
		if (i % 3 == 0 &#038;&#038; i > 0 &#038;&#038; i < _length) {
			_str = "," + _str;
		}
	}
	return (_str);
};

str = "1234567890";
trace(str.addCommas());

//Output
//1,234,567,890
</pre>
<pre class="brush:ActionScript">
//AS 3.0
function addCommas(_string:String):String{
	var _len = _string.length;
	var _str = "";
	for (var i = 0; i <= _len; ++i) {
		_str = _string.charAt(_len - i) + _str;
		if (i % 3 == 0 &#038;&#038; i > 0 &#038;&#038; i < _len) {
			_str = "," + _str;
		}
		//trace(_str);
	}
	return (_str);
}

trace(addCommas("1234567890"));

//Output
//1,234,567,890
</pre>
]]></content:encoded>
			<wfw:commentRss>http://blog.flasia.com/archives/606/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>[AS 3.0] 폰트 임베드하기 (Embed Fonts in ActionScript 3)</title>
		<link>http://blog.flasia.com/archives/585</link>
		<comments>http://blog.flasia.com/archives/585#comments</comments>
		<pubDate>Mon, 16 Mar 2009 09:10:12 +0000</pubDate>
		<dc:creator>Siaa</dc:creator>
				<category><![CDATA[ActionScript 3.0]]></category>
		<category><![CDATA[ActionScript]]></category>
		<category><![CDATA[Embed]]></category>
		<category><![CDATA[Flash]]></category>
		<category><![CDATA[Fonts]]></category>
		<category><![CDATA[임베드]]></category>
		<category><![CDATA[폰트]]></category>

		<guid isPermaLink="false">http://blog.flasia.com/?p=585</guid>
		<description><![CDATA[
[Embed(source = '../lib/CONSOLA.TTF', fontName = "Font", mimeType = "application/x-font-truetype")]
[Embed(so [...]]]></description>
			<content:encoded><![CDATA[<pre class="brush:ActionScript">
[Embed(source = '../lib/CONSOLA.TTF', fontName = "Font", mimeType = "application/x-font-truetype")]
[Embed(source = 'C:\WINDOWS\Fonts\CONSOLA.TTF', fontName = "Font", mimeType = "application/x-font-truetype")]
[Embed(systemFont = 'Consolas', fontName = "Font", mimeType = "application/x-font-truetype")]
</pre>
<p>폰트를 임베드하기 위해서는 위의 3가지 방법이 있는데,<br />
무슨 이유인지는 모르겠지만, TTF파일을 경로를 통해 임베드하는 위의 두 방법을 사용하면 에러가&#8230; FD라서 그런건가;;<br />
암튼, 3번째 시스템폰트의 이름을 사용해서 임베드하는 방법은 아무 문제없이 클리어~<br />
일단, 잊어버리지 않기 위해 메모!!!<span id="more-585"></span><br />
<object width="600" height="240" data="http://blog.flasia.com/wp-content/uploads/2009/03/embedfont.swf" type="application/x-shockwave-flash"><param name="src" value="http://blog.flasia.com/wp-content/uploads/2009/03/embedfont.swf" /></object></pre>
<pre class="brush:ActionScript">
package {

	import flash.display.MovieClip;
	import flash.text.TextField;
	import flash.text.TextFormat;
	import flash.text.TextFieldAutoSize;
	import flash.text.AntiAliasType;

	[SWF(width = "600", height = "240", backgroundColor = "#FFFFFF", framerate = "30")]

	public class Main extends MovieClip {

		//[Embed(source = '../lib/CONSOLA.TTF', fontName = "Font", mimeType = "application/x-font-truetype")]
		//[Embed(source = 'C:\WINDOWS\Fonts\CONSOLA.TTF', fontName = "Font", mimeType = "application/x-font-truetype")]
		[Embed(systemFont = 'Consolas', fontName = "Font", mimeType = "application/x-font-truetype")]

		public var font:Class;

		public function Main() {
			var format:TextFormat = new TextFormat();
			format.font	= "Font";
			format.color = 0x333333;
			format.size = 80;
			format.letterSpacing = -2;

			var label:TextField = new TextField();
			label.embedFonts = true;
			label.autoSize = TextFieldAutoSize.LEFT;
			label.antiAliasType = AntiAliasType.ADVANCED;
			label.defaultTextFormat = format;
			label.text = "blog.flasia.com";
			addChild(label);

			label.rotation = 10;
		}
	}
}
</pre>
]]></content:encoded>
			<wfw:commentRss>http://blog.flasia.com/archives/585/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>[AS 3.0] SWF가 임베드 된 URL을 이용해서 변수 전달하기</title>
		<link>http://blog.flasia.com/archives/577</link>
		<comments>http://blog.flasia.com/archives/577#comments</comments>
		<pubDate>Sun, 15 Mar 2009 04:51:20 +0000</pubDate>
		<dc:creator>Siaa</dc:creator>
				<category><![CDATA[ActionScript 3.0]]></category>
		<category><![CDATA[ActionScript]]></category>
		<category><![CDATA[ExternalInterface]]></category>
		<category><![CDATA[Flash]]></category>
		<category><![CDATA[html]]></category>
		<category><![CDATA[변수]]></category>
		<category><![CDATA[전달]]></category>

		<guid isPermaLink="false">http://blog.flasia.com/?p=577</guid>
		<description><![CDATA[html에서 swf로 변수를 전달하고 싶을 경우 보통 flashvars를 이용하는데,
flashvars를 이용하기 어려울 경우가 있다.
그럴 경우, swf가 임베드 된 html의 url을 이용해서  [...]]]></description>
			<content:encoded><![CDATA[<p>html에서 swf로 변수를 전달하고 싶을 경우 보통 flashvars를 이용하는데,<br />
flashvars를 이용하기 어려울 경우가 있다.<br />
그럴 경우, swf가 임베드 된 html의 url을 이용해서 변수를 전달하는 것도 방법이 될 수 있다. <span id="more-577"></span><br />
<em>varA=0123, varB=abcd</em> 라는 변수를 전달하고 싶을 경우, <em>flash.html?varA=0123&#038;varB=abcd</em> 의 방법으로 url에 변수를 붙여 브라우저에서 호출,<br />
플래시에서는 아래 코드를 사용하면 </p>
<pre class="brush:ActionScript">
if (ExternalInterface.available) {
	var locationUrl:String = ExternalInterface.call("document.location.href.toString");
	if (locationUrl != null) {
		var urlVars:Array = locationUrl.split("?");
		var urlParam:Array = String(urlVars[1]).split("&#038;");
	}
}
</pre>
<p>urlVars[1]에는 ?뒤의 부분(varA=0123&#038;varB=abcd)이 들어가게 된다.<br />
그리고 urlParam에는 &#8220;&#038;&#8221; 를 기준으로 나눠진 항목이 배열로 저장된다.(varA=0123, varB=abcd)<br />
이제, 이 배열을 적절히 사용하면 끝~</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.flasia.com/archives/577/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>[AS 3.0] IME가 실행 중인 경우 영문모드로 변경하기</title>
		<link>http://blog.flasia.com/archives/560</link>
		<comments>http://blog.flasia.com/archives/560#comments</comments>
		<pubDate>Mon, 02 Mar 2009 04:23:46 +0000</pubDate>
		<dc:creator>Siaa</dc:creator>
				<category><![CDATA[ActionScript 3.0]]></category>
		<category><![CDATA[ActionScript]]></category>
		<category><![CDATA[Flash]]></category>
		<category><![CDATA[IME]]></category>
		<category><![CDATA[IMEConversionMode]]></category>
		<category><![CDATA[KeyboardEvent]]></category>
		<category><![CDATA[keyCode]]></category>

		<guid isPermaLink="false">http://blog.flasia.com/?p=560</guid>
		<description><![CDATA[KeyboardEvent를 사용할 경우 IME(Input Method Editor)가 실행 중인 경우 정확한 keyCode값을 받아올 수 없다.
이럴 경우, 

if (e.keyCode == 229 [...]]]></description>
			<content:encoded><![CDATA[<p>KeyboardEvent를 사용할 경우 IME(Input Method Editor)가 실행 중인 경우 정확한 keyCode값을 받아올 수 없다.</p>
<p>이럴 경우, </p>
<pre class="brush:ActionScript">
if (e.keyCode == 229) {
	IME.conversionMode = IMEConversionMode.ALPHANUMERIC_HALF;
}
</pre>
<p>로 영문입력모드로 전환해준다.</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.flasia.com/archives/560/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>[AS 3.0] 텍스트를 한글자씩 보여주기 &#8211; RandomText</title>
		<link>http://blog.flasia.com/archives/538</link>
		<comments>http://blog.flasia.com/archives/538#comments</comments>
		<pubDate>Tue, 24 Feb 2009 10:59:41 +0000</pubDate>
		<dc:creator>Siaa</dc:creator>
				<category><![CDATA[ActionScript 3.0]]></category>
		<category><![CDATA[ActionScript]]></category>
		<category><![CDATA[Flash]]></category>
		<category><![CDATA[Random]]></category>
		<category><![CDATA[RandomText]]></category>
		<category><![CDATA[Text]]></category>
		<category><![CDATA[랜덤]]></category>
		<category><![CDATA[텍스트]]></category>

		<guid isPermaLink="false">http://blog.flasia.com/?p=538</guid>
		<description><![CDATA[
위의 예처럼 원하는 텍스트를 한글자씩 랜덤하게 보여주는 방법이다.
작업에 필요해서 구글링으로 찾은 소스, 살짝 수정.
참고 : AS3.0 ランダムにテキストを表示させてみる

// RandomText [...]]]></description>
			<content:encoded><![CDATA[<p><object width="400" height="40" data="http://blog.flasia.com/wp-content/uploads/2009/02/randomtext.swf" type="application/x-shockwave-flash"><param name="quality" value="best" /><param name="scale" value="noscale" /><param name="wmode" value="window" /><param name="src" value="http://blog.flasia.com/wp-content/uploads/2009/02/randomtext.swf" /></object><br />
위의 예처럼 원하는 텍스트를 한글자씩 랜덤하게 보여주는 방법이다.<br />
작업에 필요해서 구글링으로 찾은 소스, 살짝 수정.<span id="more-538"></span></p>
<p><em>참고 : <a href="http://blog.cyber-media.co.jp/jp.php?title=as3_0_a_ca_sa_a_na_la_as_a_eiuccoa_a_a_b&#038;more=1&#038;c=1&#038;tb=1&#038;pb=1" target="_blank">AS3.0 ランダムにテキストを表示させてみる</a></em></p>
<pre class="brush:ActionScript">
// RandomText.as
package {
	import flash.display.MovieClip;
	import flash.events.TimerEvent;
	import flash.utils.Timer;
	import flash.display.StageScaleMode;
	import flash.display.StageAlign;
	import flash.events.Event;
	import flash.text.TextField;

	public class RandomText {

		private var txtNum:int;
		private var tf:TextField;
		private var txt:String; //인수의 문자열을 담을 변수
		private var rightTxt:String;//1글자씩 표시하는 변수
		private var fakeTxt:String = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz1234567890!@%&#038;$#_?!/-";
		private var timer:Timer;
		private var viewTrace:Boolean;

		public function RandomText(_tf:TextField, _txt:String, _time:uint = 50, _viewTrace:Boolean = false):void {
			tf = _tf;
			txt = _txt;
			timer = new Timer(_time);
			viewTrace = _viewTrace;
		}

//////////////////////////////////////////////////////////////////시작
		public function start():void {
			txtNum = 0;
			rightTxt = ""; //1글자씩 대입되는 변수
			tf.addEventListener(Event.ENTER_FRAME, rollWord); //랜덤하게 표시
			timer.addEventListener(TimerEvent.TIMER, endTimer);
			timer.start();
		}

//////////////////////////////////////////////////////////////////랜덤하게 글자를 표시
		private function rollWord(e:Event):void {
			tf.text = rightTxt;
			//랜덤하게 글자를 표시하는 글자수
			var randomTextNum:int = txt.length - rightTxt.length;
			for (var i:int = 0; i < randomTextNum; i++) {
				var randNum:Number = Math.floor(Math.random()*fakeTxt.length);
				tf.appendText(fakeTxt.charAt(randNum));
			}
		}

//////////////////////////////////////////////////////////////////타이머
		private function endTimer(e:Event):void {
			if (txtNum != txt.length - 1) {
				rightTxt += txt.charAt(txtNum);
				txtNum += 1;
				if (viewTrace) {
					trace(txtNum);
				}
			}
			else { //타이머종료
				tf.text = txt;
				tf.removeEventListener(Event.ENTER_FRAME, rollWord);
				timer.stop();
			}
		}

//////////////////////////////////////////////////////////////////
	}
}
</pre>
<pre class="brush:ActionScript">
// Main.as
package {

	import flash.display.Sprite;
	import flash.text.TextField;
	import flash.text.TextFormat;
	import flash.text.TextFieldAutoSize;

	public class Main extends Sprite{
		public function Main():void {
			var _tf:TextField = new TextField();
			_tf.defaultTextFormat = new TextFormat("Verdana", 12, 0x000000);
			_tf.background = true;
			_tf.backgroundColor = 0xE0E0E0;
			_tf.autoSize = TextFieldAutoSize.LEFT;
			_tf.selectable = false;
			_tf.text = "";
			_tf.x = 10;
			_tf.y = 10;
			addChild(_tf);

			var rt:RandomText = new RandomText(_tf, "ActionScript Thread Library 1.0 (そうめん) ドキュメント", 25);
			rt.start();
		}
	}
}
</pre>
]]></content:encoded>
			<wfw:commentRss>http://blog.flasia.com/archives/538/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>[AS 3.0] 이벤트 리스너에 인수 함께 전달하기(3)</title>
		<link>http://blog.flasia.com/archives/521</link>
		<comments>http://blog.flasia.com/archives/521#comments</comments>
		<pubDate>Fri, 20 Feb 2009 13:28:04 +0000</pubDate>
		<dc:creator>Siaa</dc:creator>
				<category><![CDATA[ActionScript 3.0]]></category>
		<category><![CDATA[ActionScript]]></category>
		<category><![CDATA[addEventListener]]></category>
		<category><![CDATA[Event]]></category>
		<category><![CDATA[Flash]]></category>
		<category><![CDATA[Handler]]></category>
		<category><![CDATA[리스너]]></category>
		<category><![CDATA[이벤트]]></category>
		<category><![CDATA[인수]]></category>
		<category><![CDATA[핸들러]]></category>

		<guid isPermaLink="false">http://blog.flasia.com/?p=521</guid>
		<description><![CDATA[원문 : http://d.hatena.ne.jp/nitoyon/20071226/as_event_extra_arg
DynamicEvent 클래스를 이용하는 방법.
먼저 DynamicEvent 클래스를 [...]]]></description>
			<content:encoded><![CDATA[<p><em>원문 : <a href="http://d.hatena.ne.jp/nitoyon/20071226/as_event_extra_arg" target="_blank">http://d.hatena.ne.jp/nitoyon/20071226/as_event_extra_arg</a></em></p>
<p>DynamicEvent 클래스를 이용하는 방법.<span id="more-521"></span><br />
먼저 DynamicEvent 클래스를 작성합니다.</p>
<pre class="brush:ActionScript">
package {
    import flash.events.Event;

    public dynamic class DynamicEvent extends Event {
        public function DynamicEvent(type:String,
                                     bubbles:Boolean = false,
                                     cancelable:Boolean = false) {
            super(type, bubbles, cancelable);
        }

        override public function clone():Event {
            return new DynamicEvent(type, bubbles, cancelable);
        }
    }
}
</pre>
<p>Flex SDK에는 mx.events.DynamicEvent 이라는 클래스가 정의되어 있기 때문에 Flex SDK로 개발하는 경우 이 클래스를 사용하는 것이 좋을지도&#8230;</p>
<p>송신은 이렇게~</p>
<pre class="brush:ActionScript">
var event:DynamicEvent = new DynamicEvent("myEvent");
event.param1 = "문자열";
event.param2 = [1, 2, 3];  // 배열도OK
dispatchEvent(event);

dispatchEvent(event);
</pre>
<p>수신은 이렇게~</p>
<pre class="brush:ActionScript">
addEventListener("myEvent", function(event:DynamicEvent):void {
    trace(event.param1); // 문자열
});
</pre>
]]></content:encoded>
			<wfw:commentRss>http://blog.flasia.com/archives/521/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>[AS 3.0] 이벤트 리스너에 인수 함께 전달하기(2)</title>
		<link>http://blog.flasia.com/archives/517</link>
		<comments>http://blog.flasia.com/archives/517#comments</comments>
		<pubDate>Wed, 18 Feb 2009 16:03:29 +0000</pubDate>
		<dc:creator>Siaa</dc:creator>
				<category><![CDATA[ActionScript 3.0]]></category>
		<category><![CDATA[ActionScript]]></category>
		<category><![CDATA[addEventListener]]></category>
		<category><![CDATA[Event]]></category>
		<category><![CDATA[Handler]]></category>
		<category><![CDATA[리스너]]></category>
		<category><![CDATA[이벤트]]></category>
		<category><![CDATA[인수]]></category>
		<category><![CDATA[핸들러]]></category>

		<guid isPermaLink="false">http://blog.flasia.com/?p=517</guid>
		<description><![CDATA[오브젝트에 이벤트 리스너를 등록할 때 이벤트외의 인수를 함께 보내는 방법.
그 두번째~

button.addEventListener(MouseEvent.CLICK, function(e:MouseEv [...]]]></description>
			<content:encoded><![CDATA[<p>오브젝트에 이벤트 리스너를 등록할 때 이벤트외의 인수를 함께 보내는 방법.<br />
그 두번째~<span id="more-517"></span></p>
<pre class="brush:ActionScript">
button.addEventListener(MouseEvent.CLICK, function(e:MouseEvent) { handleClickEvent(e, "Home") } );

function handleClickEvent(e:MouseEvent, str:String) {
        trace("Argument :"+str,"- Event target :"+e.target.name);
}
</pre>
]]></content:encoded>
			<wfw:commentRss>http://blog.flasia.com/archives/517/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>[AS 3.0] 이벤트 리스너에 인수 함께 전달하기(1)</title>
		<link>http://blog.flasia.com/archives/472</link>
		<comments>http://blog.flasia.com/archives/472#comments</comments>
		<pubDate>Sun, 15 Feb 2009 15:28:10 +0000</pubDate>
		<dc:creator>Siaa</dc:creator>
				<category><![CDATA[ActionScript 3.0]]></category>
		<category><![CDATA[ActionScript]]></category>
		<category><![CDATA[addEventListener]]></category>
		<category><![CDATA[Event]]></category>
		<category><![CDATA[Handler]]></category>
		<category><![CDATA[리스너]]></category>
		<category><![CDATA[이벤트]]></category>
		<category><![CDATA[인수]]></category>
		<category><![CDATA[핸들러]]></category>

		<guid isPermaLink="false">http://blog.flasia.com/?p=472</guid>
		<description><![CDATA[원문 : http://blog.workrooom.com/?eid=932402
오브젝트에 이벤트 리스너를 등록할 때 이벤트외의 인수를 함께 보내는 방법이다.
다른 이벤트에서도 사용 가능한지 하나하나  [...]]]></description>
			<content:encoded><![CDATA[<p><em>원문 : <a href="http://blog.workrooom.com/?eid=932402" target="_blank">http://blog.workrooom.com/?eid=932402</a></em></p>
<p>오브젝트에 이벤트 리스너를 등록할 때 이벤트외의 인수를 함께 보내는 방법이다.<br />
다른 이벤트에서도 사용 가능한지 하나하나 확인은 못 해봤지만,<br />
MouseEvent에서 이상 없이 동작하는 걸로 봐서 다른 이벤트에서도 사용할 수 있을 것 같다.<br />
잘만 사용하면 유용한 코드가 될지도&#8230; <span id="more-472"></span></p>
<pre class="brush:ActionScript">
package {

	import flash.display.Sprite;
	import flash.events.Event;
	import flash.events.MouseEvent;

	// SWF Metadata
	[SWF(width="400", height="300", backgroundColor="#FFFFFF", framerate="30")]

	public class Main extends Sprite {

		public function Main():void {
			var btn:Sprite = new Sprite();
			btn.graphics.clear();
			btn.graphics.beginFill(0x0099FF);
			btn.graphics.drawRect(0, 0, 100, 50);
			btn.graphics.endFill();

			btn.buttonMode = true;
			btn.x = stage.stageWidth * 0.5 - btn.width * 0.5;
			btn.y = stage.stageHeight * 0.5 - btn.height * 0.5;
			addChild(btn);

			btn.addEventListener(MouseEvent.CLICK, onClickHandler("0123456789"));
		}

		private function onClickHandler(value:String):Function {
			function myfunc(event:MouseEvent):void {
				trace(value);
				trace(event.target);
			}
			return myfunc;
		}
	}
}

//Output
//0123456789
//[object Sprite]
</pre>
]]></content:encoded>
			<wfw:commentRss>http://blog.flasia.com/archives/472/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>[AS 3.0] 배열 내부의 중복된 요소 제거하기</title>
		<link>http://blog.flasia.com/archives/468</link>
		<comments>http://blog.flasia.com/archives/468#comments</comments>
		<pubDate>Sun, 15 Feb 2009 13:05:04 +0000</pubDate>
		<dc:creator>Siaa</dc:creator>
				<category><![CDATA[ActionScript 3.0]]></category>
		<category><![CDATA[ActionScript]]></category>
		<category><![CDATA[Array]]></category>
		<category><![CDATA[Flash]]></category>
		<category><![CDATA[배열]]></category>

		<guid isPermaLink="false">http://blog.flasia.com/?p=468</guid>
		<description><![CDATA[원문 : http://blog.workrooom.com/?eid=956306
배열 내부에 중복된 요소가 있을 경우 중복된 요소를 제거하고 새로운 배열로 만들기

var testArray:Array  [...]]]></description>
			<content:encoded><![CDATA[<p><em>원문 : <a href="http://blog.workrooom.com/?eid=956306">http://blog.workrooom.com/?eid=956306</a></em></p>
<p>배열 내부에 중복된 요소가 있을 경우 중복된 요소를 제거하고 새로운 배열로 만들기<span id="more-468"></span>
<pre class="brush:ActionScript">
var testArray:Array = new Array("사과", "참외", "귤", "복숭아", "바나나", "귤", "배", "바나나", "참외");

function duplicateCheck(input_array:Array) {
	var result_array:Array = new Array();
	var tempStr:String = "";
	for (var i = 0; i < input_array.length; i++) {
		if (tempStr.search(input_array[i]) == -1) {
			//중복체크용 문자열에 값이 없으면 새로운 배열에 추가
			result_array.push(input_array[i]);
			tempStr += input_array[i] + " ";
			trace(input_array[i]);
		}
	}
	return result_array;
}

duplicateCheck(testArray);

//Output
//사과
//참외
//귤
//복숭아
//바나나
//배
</pre>
<h2>search() 메서드</h2>
<p><em>function search(pattern:*):int</em><br />
지정된 pattern을 검색하고 일치하는 첫 번째 하위 문자열의 인덱스를 반환합니다. 일치하는 하위 문자열이 없으면 -1이 반환됩니다.</p>
<p><em>매개 변수</em><br />
pattern:* — 비교할 패턴으로, 모든 유형의 객체가 될 수 있지만 일반적으로는 문자열 또는 일반 표현식입니다. pattern이 일반 표현식 또는 문자열이 아니면 문자열로 변환된 후 메서드가 실행됩니다. 일반 표현식을 지정한 경우 이 메서드는 일반 표현식의 전역 플래그("g") 및 lastIndex 속성을 무시합니다. 이 속성은 수정되지 않고 그대로 유지됩니다. 값을 전달하지 않거나 정의되지 않은 값을 전달하면 -1이 반환됩니다.</p>
<p><em>반환값</em><br />
int — 일치하는 첫 번째 하위 문자열의 인덱스입니다. 일치 항목이 없으면 -1입니다. 이 문자열의 인덱스는 0부터 시작하므로 문자열에서 첫 번째 문자의 인덱스는 0이고 마지막 문자의 인덱스는 string.length - 1입니다. </p>
]]></content:encoded>
			<wfw:commentRss>http://blog.flasia.com/archives/468/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>[AS 3.0] 속성 참조가 안 될 때, Event.ADDED_TO_STAGE</title>
		<link>http://blog.flasia.com/archives/112</link>
		<comments>http://blog.flasia.com/archives/112#comments</comments>
		<pubDate>Wed, 17 Dec 2008 06:11:26 +0000</pubDate>
		<dc:creator>Siaa</dc:creator>
				<category><![CDATA[ActionScript 3.0]]></category>
		<category><![CDATA[ActionScript]]></category>
		<category><![CDATA[ADDED_TO_STAGE]]></category>
		<category><![CDATA[Flash]]></category>

		<guid isPermaLink="false">http://blog.flasia.com/?p=112</guid>
		<description><![CDATA[TypeError: Error #1009: null 객체 참조의 속성이나 메서드에 액세스할 수 없습니다.
라는 에러 문구를 종종 보게 되는데&#8230;
주로 클래스를 인스턴스화해서 addChild [...]]]></description>
			<content:encoded><![CDATA[<h2>TypeError: Error #1009: null 객체 참조의 속성이나 메서드에 액세스할 수 없습니다.</h2>
<p>라는 에러 문구를 종종 보게 되는데&#8230;<br />
주로 클래스를 인스턴스화해서 addChild() 하면서 동시에 root, parent, stage 의 속성을 참조하려고 하면 위의 에러 문구를 만나게 된다. 이는 addChild()가 되었으니 당근 참조가 가능하겠지.. 라고 생각했는데, 결국 뒤통수를 맞게 되는 것이다.<br />
(배구에서 공격하려고 점프했는데 공이 아직 안 올라온거라고 할까&#8230;)<br />
여튼, 이럴 때 Event.ADDED_TO_STAGE 를 사용하면 간단히 해결된다. <span id="more-112"></span></p>
<pre class="brush:ActionScript">
package {

	import flash.display.MovieClip;
	import flash.events.Event;

	public class Main extends MovieClip {

		public function Main():void {
			addEventListener(Event.ADDED_TO_STAGE, onAddedHandler);
		}

		private function onAddedHandler(e:Event):void {
			init();
		}

		private function init():void {
			removeEventListener(Event.ADDED_TO_STAGE, onAddedHandler);

			trace( "stage.stageHeight : " + stage.stageHeight );
			trace( "stage.stageWidth : " + stage.stageWidth );
		}
	}
}</pre>
]]></content:encoded>
			<wfw:commentRss>http://blog.flasia.com/archives/112/feed</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>[AS 3.0] 나만의 이벤트 만들기 &#8211; #2 (Event상속)</title>
		<link>http://blog.flasia.com/archives/106</link>
		<comments>http://blog.flasia.com/archives/106#comments</comments>
		<pubDate>Sun, 14 Dec 2008 06:06:33 +0000</pubDate>
		<dc:creator>Siaa</dc:creator>
				<category><![CDATA[ActionScript 3.0]]></category>
		<category><![CDATA[ActionScript]]></category>
		<category><![CDATA[Flash]]></category>

		<guid isPermaLink="false">http://blog.flasia.com/?p=106</guid>
		<description><![CDATA[이번엔 Event클래스를 상속받아 CustomEventExam 클래스를 만들어서 사용한다. 

//CustomEventExam.as
package {

	import flash.events.Event;

	public class CustomEventExam extends Event {

		private var _customValue:Number;

		public function CustomEventExam(type:String, customValue:Number, bubbles:Boolean = false,
cancelable:Boolean = false) {
			super(type, bubbles, cancelable);
			_customValue = customValue;
		}

		public function get customValue():Number {
			return _customValue;
		}
	}
}
CustomEventExam 객체를 dispatchEvent 시킨다. 

//EventDispatchExam.as
package {

	import flash.events.Event;
	import flash.events.EventDispatcher;

	public class EventDispatchExam extends EventDispatcher{

		public static const CUSTOM_EVENT:String = "custom_event";

		public function EventDispatchExam() {

		}

		public function [...]]]></description>
			<content:encoded><![CDATA[<p>이번엔 Event클래스를 상속받아 CustomEventExam 클래스를 만들어서 사용한다. <span id="more-106"></span></p>
<pre class="brush:ActionScript">
//CustomEventExam.as
package {

	import flash.events.Event;

	public class CustomEventExam extends Event {

		private var _customValue:Number;

		public function CustomEventExam(type:String, customValue:Number, bubbles:Boolean = false,
cancelable:Boolean = false) {
			super(type, bubbles, cancelable);
			_customValue = customValue;
		}

		public function get customValue():Number {
			return _customValue;
		}
	}
}</pre>
<p>CustomEventExam 객체를 dispatchEvent 시킨다. </p>
<pre class="brush:ActionScript">
//EventDispatchExam.as
package {

	import flash.events.Event;
	import flash.events.EventDispatcher;

	public class EventDispatchExam extends EventDispatcher{

		public static const CUSTOM_EVENT:String = "custom_event";

		public function EventDispatchExam() {

		}

		public function callCustomEvent(n:Number):void {
			dispatchEvent(new CustomEventExam(CUSTOM_EVENT, n));
		}
	}
}</pre>
<p>EventDispatchExam인스턴스를 생성하고, callCustomEvent()를 호출하면 CUSTOM_EVENT 가 이벤트리스너로 등록된 인스턴스에 이벤트와 인수를 전달, 해당 함수를 실행한다.</p>
<pre class="brush:ActionScript">
//Main.as
package {

	import flash.display.Sprite;
	import flash.events.Event;

	public class Main extends Sprite {

		public function Main():void{

			var myEvent:EventDispatchExam = new EventDispatchExam();

			myEvent.addEventListener(EventDispatchExam.CUSTOM_EVENT, onCustomEventFunc);
			myEvent.callCustomEvent(20);
		}		

		private function onCustomEventFunc(e:CustomEventExam):void {
			trace( "onCustomEventFunc" );
			trace( "e : " + e );
			trace( "e.target : " + e.target );
			trace( "e.customValue : " + e.customValue );
		}
	}
}</pre>
<p>결과값</p>
<pre class="brush:ActionScript">
//OutPut
//onCustomEventFunc
//e : [Event type="custom_event" bubbles=false cancelable=false eventPhase=2]
//e.target : [object EventDispatchExam]
//e.customValue : 20</pre>
]]></content:encoded>
			<wfw:commentRss>http://blog.flasia.com/archives/106/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>[AS 3.0] 나만의 이벤트 만들기 &#8211; #1 (EventDispatcher, dispatchEvent)</title>
		<link>http://blog.flasia.com/archives/101</link>
		<comments>http://blog.flasia.com/archives/101#comments</comments>
		<pubDate>Sun, 14 Dec 2008 05:53:40 +0000</pubDate>
		<dc:creator>Siaa</dc:creator>
				<category><![CDATA[ActionScript 3.0]]></category>
		<category><![CDATA[ActionScript]]></category>
		<category><![CDATA[dispatchEvent]]></category>
		<category><![CDATA[EventDispatcher]]></category>
		<category><![CDATA[Flash]]></category>

		<guid isPermaLink="false">http://blog.flasia.com/?p=101</guid>
		<description><![CDATA[커스텀 이벤트를 만드는 방법에 대해서 간단히 알아보자.
이벤트 객체의 역활을 하게 될 MY_EVENT 를 정의하고 dispatchEvent 시켜준다.

//EventDispatchExam.as
pa [...]]]></description>
			<content:encoded><![CDATA[<p>커스텀 이벤트를 만드는 방법에 대해서 간단히 알아보자.<span id="more-101"></span><br />
이벤트 객체의 역활을 하게 될 MY_EVENT 를 정의하고 dispatchEvent 시켜준다.</p>
<pre class="brush:ActionScript">
//EventDispatchExam.as
package {	

	import flash.events.Event;
	import flash.events.EventDispatcher;	

	public class EventDispatchExam extends EventDispatcher{

		public static const MY_EVENT:String = "my_event";
		public var _myEventValue:Number;

		public function EventDispatchExam() {
		}

		public function callMyEvent(n:Number):void {
			_myEventValue = n;
			dispatchEvent(new Event(MY_EVENT));
		}
	}
}</pre>
<p>EventDispatchExam인스턴스를 생성하고, callMyEvent()를 호출하면 MY_EVENT 가 이벤트리스너로 등록된 인스턴스에 이벤트와 인수를 전달, 해당 함수를 실행한다.</p>
<pre class="brush:ActionScript">
//Main.as
package {

	import flash.display.Sprite;
	import flash.events.Event;

	public class Main extends Sprite {

		public function Main():void{
			var myEvent:EventDispatchExam = new EventDispatchExam();
			myEvent.addEventListener(EventDispatchExam.MY_EVENT, onMyEventFunc);
			myEvent.callMyEvent(10);
		}

		private function onMyEventFunc(e:Event):void {
			trace( "onMyEventFunc" );
			trace( "e : " + e );
			trace( "e.target : " + e.target );
			trace( "e.target._myEventValue : " + e.target._myEventValue );
		}
	}
}</pre>
<p>결과값은 다음과 같다.</p>
<pre class="brush:ActionScript">
//OutPut
//onMyEventFunc
//e : [Event type="my_event" bubbles=false cancelable=false eventPhase=2]
//e.target : [object EventDispatchExam]
//e.target._myEventValue : 10</pre>
]]></content:encoded>
			<wfw:commentRss>http://blog.flasia.com/archives/101/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>[AS 3.0] URLLoader로 외부파일과 변수 주고 받기 (PHP)</title>
		<link>http://blog.flasia.com/archives/99</link>
		<comments>http://blog.flasia.com/archives/99#comments</comments>
		<pubDate>Thu, 11 Dec 2008 05:49:53 +0000</pubDate>
		<dc:creator>Siaa</dc:creator>
				<category><![CDATA[ActionScript 3.0]]></category>
		<category><![CDATA[ActionScript]]></category>
		<category><![CDATA[Flash]]></category>
		<category><![CDATA[URLLoader]]></category>

		<guid isPermaLink="false">http://blog.flasia.com/?p=99</guid>
		<description><![CDATA[AS 2.0에서는 아래처럼 sendAndLoad()를 이용해서 외부파일과 변수를 주고 받았었다.

function dataSendLoad() {
	//변수를 PHP 파일로 전송할 개체 생성
	var [...]]]></description>
			<content:encoded><![CDATA[<p>AS 2.0에서는 아래처럼 sendAndLoad()를 이용해서 외부파일과 변수를 주고 받았었다.</p>
<pre class="brush:ActionScript">
function dataSendLoad() {
	//변수를 PHP 파일로 전송할 개체 생성
	var mySendVars = new LoadVars();

	//개체에 변수 입력
	var mySendVars.sendvars = "testVars";

	//PHP로부터 보내진 변수들을 로드할 LoadVars 개체 생성
	var myLoadVars  = new LoadVars();

	//로드 완료 후 실행 할 함수 정의
	mySendVars.onLoad = function(success) {
		...
	}

	//PHP 파일로 변수 전송 및 로드
	mySendVars.sendAndLoad("send_load.php", myLoadVars, "POST");
}</pre>
<p>AS 3.0에서는~~ <span id="more-99"></span></p>
<pre class="brush:ActionScript">
package {

	import flash.display.Sprite;
	import flash.events.Event;
	import flash.events.ProgressEvent;
	import flash.net.URLLoader;
	import flash.net.URLRequest;
	import flash.net.URLRequestMethod;
	import flash.net.URLLoaderDataFormat;
	import flash.net.URLVariables;
	import flash.events.IOErrorEvent;

	public class Main extends Sprite {

		// 변수를 주고 받을 PHP파일
		private var url : String = "send_load.php";
		// PHP에 전달한 변수
		private var variables : URLVariables;			

		public function Main() : void {
			variables = new URLVariables();
			// 변수값 할당
			variables.sendvars = "testVars";		

			sendData(url, variables);
		}

		public function sendData(_url:String, _vars:URLVariables):void {
			var request : URLRequest = new URLRequest(_url);
			request.data = _vars;
			// 전송방식
			request.method = URLRequestMethod.POST;		

			var loader:URLLoader = new URLLoader();
			// 데이터 형식 지정(BINARY, TEXT, VARIABLES)
			loader.dataFormat = URLLoaderDataFormat.VARIABLES;
			loader.addEventListener(ProgressEvent.PROGRESS, onProgressHandler);
			loader.addEventListener(Event.COMPLETE, onCompleteHandler);
			loader.addEventListener(IOErrorEvent.IO_ERROR, onIOErrorHandler);
			loader.load(request);
		}

		private function onProgressHandler(e:ProgressEvent):void {
			trace("@ PHP Loading");
		}

		private function onCompleteHandler(e:Event):void {
			var loader : URLLoader = URLLoader(e.target);
			trace( "loader.data : " + loader.data );
		}

		private function onIOErrorHandler(e:IOErrorEvent):void {
			trace("Error loading URL.");
		}
	}
}</pre>
]]></content:encoded>
			<wfw:commentRss>http://blog.flasia.com/archives/99/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>[AS 3.0] HTML 에서 FlashVars 로 플래시에 변수 전달하기</title>
		<link>http://blog.flasia.com/archives/76</link>
		<comments>http://blog.flasia.com/archives/76#comments</comments>
		<pubDate>Tue, 02 Dec 2008 05:25:17 +0000</pubDate>
		<dc:creator>Siaa</dc:creator>
				<category><![CDATA[ActionScript 3.0]]></category>
		<category><![CDATA[ActionScript]]></category>
		<category><![CDATA[Flash]]></category>
		<category><![CDATA[FlashVars]]></category>

		<guid isPermaLink="false">http://blog.flasia.com/?p=76</guid>
		<description><![CDATA[이전 AS 2.0까지는 HTML에서 플래시로 변수를 전달할 경우
example.swf?A=1&#38;B=2 이런식으로 파일명 뒤에 변수를 붙여서 전달했었는데 3.0에서는 이 방법이 통하질 않는다.
 [...]]]></description>
			<content:encoded><![CDATA[<p>이전 AS 2.0까지는 HTML에서 플래시로 변수를 전달할 경우<br />
example.swf?A=1&amp;B=2 이런식으로 파일명 뒤에 변수를 붙여서 전달했었는데 3.0에서는 이 방법이 통하질 않는다.<br />
3.0에서는 FlashVars 라는 Param값을 이용하면 되는데,<br />
<span id="more-76"></span><br />
아래 코드처럼 FlashVars (26, 34 번째 줄)에 플래시에 전달하려는 변수를 넣어주고&#8230;</p>
<pre class="brush:html">&lt;script language="javascript"&gt;
if (AC_FL_RunContent == 0) {
alert("This page requires AC_RunActiveContent.js.");
} else {
AC_FL_RunContent(
'codebase', 'http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=9,0,0,0',
'width', '400',
'height', '300',
'src', 'Example',
'quality', 'high',
'pluginspage', 'http://www.macromedia.com/go/getflashplayer',
'align', 'middle',
'play', 'true',
'loop', 'true',
'scale', 'showall',
'wmode', 'window',
'devicefont', 'false',
'id', 'Example',
'bgcolor', '#ffffff',
'name', 'Example',
'menu', 'true',
'allowFullScreen', 'false',
'allowScriptAccess','sameDomain',
'movie', 'Example',
'salign', ''
'FlashVars', 'myVar1=1&amp;myVar2=2'
); //end AC code
}
&lt;/script&gt;
&lt;noscript&gt;
&lt;object classid="clsid:d27cdb6e-ae6d-11cf-96b8-444553540000" codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=9,0,0,0" width="400" height="300" id="Example" align="middle"&gt;
&lt;param name="allowScriptAccess" value="sameDomain" /&gt;
&lt;param name="allowFullScreen" value="false" /&gt;
&lt;param name="FlashVars" value="myVar1=1&amp;myVar2=2" /&gt;
&lt;param name="movie" value="Example.swf" /&gt;
&lt;param name="quality" value="high" /&gt;
&lt;param name="bgcolor" value="#ffffff" /&gt;
&lt;embed src="Example.swf" quality="high" bgcolor="#ffffff" width="400" height="300" name="Example" align="middle" allowScriptAccess="sameDomain" allowFullScreen="false" type="application/x-shockwave-flash" pluginspage="http://www.macromedia.com/go/getflashplayer" /&gt;
&lt;/object&gt;
&lt;/noscript&gt;</pre>
<p>플래시에서는 아래의 방법으로 변수를 사용~~</p>
<pre class="brush:ActionScript">//AS 3.0
var myParam1 = loaderInfo.parameters.myVar1;
var myParam2 = loaderInfo.parameters.myVar2;</pre>
]]></content:encoded>
			<wfw:commentRss>http://blog.flasia.com/archives/76/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>[AS 3.0] getDefinitionByName() 함수</title>
		<link>http://blog.flasia.com/archives/70</link>
		<comments>http://blog.flasia.com/archives/70#comments</comments>
		<pubDate>Sun, 30 Nov 2008 05:07:56 +0000</pubDate>
		<dc:creator>Siaa</dc:creator>
				<category><![CDATA[ActionScript 3.0]]></category>
		<category><![CDATA[ActionScript]]></category>
		<category><![CDATA[Flash]]></category>
		<category><![CDATA[getDefinitionByName]]></category>

		<guid isPermaLink="false">http://blog.flasia.com/?p=70</guid>
		<description><![CDATA[getDefinitionByName() 함수는 매개 변수로 지정된 클래스의 클래스 객체에 대한 참조를 반환합니다.
어떤건가 하면&#8230; 예를들어,
FLA파일을 작성하고 라이브러리에 무비클립을  [...]]]></description>
			<content:encoded><![CDATA[<p>getDefinitionByName() 함수는 매개 변수로 지정된 클래스의 클래스 객체에 대한 참조를 반환합니다.<br />
어떤건가 하면&#8230; 예를들어,<br />
FLA파일을 작성하고 라이브러리에 무비클립을 등록하고서, Linkage를 통해 Class를 지정해 주었을 때 이놈을 스테이지로 끄집어 낼 수가 있죠. 간단히 아래처럼 할 수 있겠지요~</p>
<pre class="brush:ActionScript">
var myMC:MC1 = new MC1();
addChild(myMC);</pre>
<p>그런데, <span id="more-70"></span>아래 이미지처럼 Linkage를 통해 Class를 지정해 준 놈이 많고, 게다가 Class이름이 일정한 규칙(MC1, MC2, MC3, &#8230;)을 갖고 있을 때,<br />
<img class="alignnone size-full wp-image-71" title="getdefinitionbyname" src="http://blog.flasia.com/wp-content/uploads/2009/01/getdefinitionbyname.png" alt="getdefinitionbyname" width="367" height="346" /><br />
요거 for문을 사용하면 먼가 될 거 같은 생각이 듭니다.<br />
그런데, for문과 배열을 이용해서 변수를 규칙적으로 만들 수는 있지만 new연산자의 클래스를 각각 다르게 지정하는 건 안되죠..<br />
요럴 때 getDefinitionByName()함수를 사용하면 편합니다.<br />
레퍼런스에도 나와있지만</p>
<ol>
<li> Class유형의 변수 ClassReference를 getDefinitionByName()를 이용해서 원하는 클래스에 할당합니다.</li>
<li> instance라는 ClassReference의 인스턴스를 인스턴스화 하고&#8230;</li>
<li> 원하는 속성값을 지정하고서 끄집어내면 됩니다.</li>
</ol>
<pre class="brush:ActionScript">
for(var i:Number = 1; i &lt;= 5; i++){
	var ClassReference:Class = getDefinitionByName("MC" + i) as Class;
	var instance:Object = new ClassReference();
	instance.x = 100 * i;
	instance.y = 50;
	instance.buttonMode = true;
	instance.name = "Circle" + i
	instance.addEventListener(MouseEvent.CLICK, onClickFunc);
	addChild(DisplayObject(instance));
}

function onClickFunc(e:MouseEvent):void{
	trace(e["target"].name);
}</pre>
<p><object width="600" height="120" data="http://blog.flasia.com/wp-content/uploads/2009/01/getdefinitionbyname.swf" type="application/x-shockwave-flash"><param name="src" value="http://blog.flasia.com/wp-content/uploads/2009/01/getdefinitionbyname.swf" /></object></p>
]]></content:encoded>
			<wfw:commentRss>http://blog.flasia.com/archives/70/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>[AS 3.0] for문을 이용해서 동적으로 오브젝트 생성하기</title>
		<link>http://blog.flasia.com/archives/62</link>
		<comments>http://blog.flasia.com/archives/62#comments</comments>
		<pubDate>Sat, 29 Nov 2008 04:50:39 +0000</pubDate>
		<dc:creator>Siaa</dc:creator>
				<category><![CDATA[ActionScript 3.0]]></category>
		<category><![CDATA[ActionScript]]></category>
		<category><![CDATA[Flash]]></category>

		<guid isPermaLink="false">http://blog.flasia.com/?p=62</guid>
		<description><![CDATA[AS 3.0에서도 for문과 배열을 이용하면 오브젝트를 동적으로 생성할 수 있다.

Case1
생성하려는 오브젝트의 갯수가 정해져 있을 경우.


package {

	import flash.display.Sprite;

	public class Main extends Sprite {

		private var circleNum:int = 20;
		private var sW:int = stage.stageWidth;
		private var sH:int = stage.stageHeight;
		private var radius:Number = 100;

		public function Main():void{
			var ary:Array = new Array(circleNum);
			for (var i:Number = 0; i < 20; i++) {
				ary[i] = new [...]]]></description>
			<content:encoded><![CDATA[<p>AS 3.0에서도 for문과 배열을 이용하면 오브젝트를 동적으로 생성할 수 있다.<br />
<span id="more-62"></span><br />
<strong>Case1<br />
생성하려는 오브젝트의 갯수가 정해져 있을 경우.</strong><br />
<object width="600" height="200" data="http://blog.flasia.com/wp-<br />
content/uploads/2009/01/makeobjectcase1.swf" type="application/x-shockwave-flash"><param name="src" value="http://blog.flasia.com/wp-content/uploads/2009/01/makeobjectcase1.swf" /></object></p>
<pre class="brush:ActionScript">
package {

	import flash.display.Sprite;

	public class Main extends Sprite {

		private var circleNum:int = 20;
		private var sW:int = stage.stageWidth;
		private var sH:int = stage.stageHeight;
		private var radius:Number = 100;

		public function Main():void{
			var ary:Array = new Array(circleNum);
			for (var i:Number = 0; i < 20; i++) {
				ary[i] = new Sprite();
				ary[i].graphics.beginFill(Math.random() * 0xFFFFFF, Math.random());
				ary[i].graphics.drawCircle(Math.random() * sW, Math.random() * sH, Math.random() * radius);
				ary[i].graphics.endFill();
				ary[i].name = "Circle" + i;
				addChild(ary[i]);
			}
		}
	}
}</pre>
<p><strong>Case2<br />
생성하려는 오브젝트의 갯수가 정해져 있지 않을 경우. </strong><br />
<object width="600" height="200" data="http://blog.flasia.com/wp-<br />
content/uploads/2009/01/makeobjectcase2.swf" type="application/x-shockwave-flash"><param name="src" value="http://blog.flasia.com/wp-content/uploads/2009/01/makeobjectcase2.swf" /></object></p>
<pre class="brush:ActionScript">
package {

	import flash.display.Sprite;

	public class Main extends Sprite {

		private var sW:int = stage.stageWidth;
		private var sH:int = stage.stageHeight;
		private var radius:Number = 100;

		public function Main():void{
			var ary:Array = new Array();
			var circleNum:int = 20;
			for (var i:Number = 0; i < circleNum; i++) {
				var sp:Sprite = new Sprite();
				sp.graphics.beginFill(Math.random() * 0xFFFFFF, Math.random());
				sp.graphics.drawCircle(Math.random() * sW, Math.random() * sH, Math.random() * radius);
				sp.graphics.endFill();
				sp.name = "Circle" + i;
				ary.push(sp);
				addChild(sp);
			}
		}
	}
}</pre>
<p>제어는 아래를 참고</p>
<pre class="brush:ActionScript">
var temp:Sprite = getChildByName("Circle1");
(getChildByName("Circle"+i) as Sprite).x = 100; </pre>
]]></content:encoded>
			<wfw:commentRss>http://blog.flasia.com/archives/62/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>[AS 3.0] Instance Name으로 다른 클래스 제어</title>
		<link>http://blog.flasia.com/archives/28</link>
		<comments>http://blog.flasia.com/archives/28#comments</comments>
		<pubDate>Sat, 18 Oct 2008 02:06:47 +0000</pubDate>
		<dc:creator>Siaa</dc:creator>
				<category><![CDATA[ActionScript 3.0]]></category>
		<category><![CDATA[ActionScript]]></category>
		<category><![CDATA[Flash]]></category>

		<guid isPermaLink="false">http://blog.flasia.com/?p=28</guid>
		<description><![CDATA[서로 다른 클래스로 등록된 놈들을 Instance Name을 이용해서 제어하기.

//Main.as
package  {

	import flash.display.MovieClip;
	import flash.display.Sprite;
	import flash.events.*;
	import fl.motion.easing.*;
	import gs.TweenLite;

	public class Main extends Sprite {

		private var boxA:BoxA;
		private var boxB:BoxB;

		public function Main() {

			for (var i:int = 0; i &#60; 3; i++) {
				boxA = new BoxA((i * 160) + 140, 60, "A" + i);
				boxA.addEventListener(MouseEvent.MOUSE_OVER, setBoxAMouseOverHandler);
				boxA.addEventListener(MouseEvent.MOUSE_OUT, setBoxAMouseOutHandler);
				addChild(boxA);
			}

			for (var j:int = 0; j [...]]]></description>
			<content:encoded><![CDATA[<p>서로 다른 클래스로 등록된 놈들을 Instance Name을 이용해서 제어하기.<br />
<span id="more-28"></span></p>
<pre class="brush:ActionScript">//Main.as
package  {

	import flash.display.MovieClip;
	import flash.display.Sprite;
	import flash.events.*;
	import fl.motion.easing.*;
	import gs.TweenLite;

	public class Main extends Sprite {

		private var boxA:BoxA;
		private var boxB:BoxB;

		public function Main() {

			for (var i:int = 0; i &lt; 3; i++) {
				boxA = new BoxA((i * 160) + 140, 60, "A" + i);
				boxA.addEventListener(MouseEvent.MOUSE_OVER, setBoxAMouseOverHandler);
				boxA.addEventListener(MouseEvent.MOUSE_OUT, setBoxAMouseOutHandler);
				addChild(boxA);
			}

			for (var j:int = 0; j &lt; 3; j++) {
				boxB = new BoxB((j * 160) + 140, 140, "B" + j);
				boxB.addEventListener(MouseEvent.MOUSE_OVER, setBoxBMouseOverHandler);
				boxB.addEventListener(MouseEvent.MOUSE_OUT, setBoxBMouseOutHandler);
				addChild(boxB);
			}

		}

		private function setBoxAMouseOverHandler(e:MouseEvent):void {
			var _targetName:String = "B" + e.target.name.substr(1, 1);
			var _target:MovieClip = e.target.root.getChildByName(_targetName);
			tweenMotion(_target, 0.5, 1.2, 1.2);
		}

		private function setBoxAMouseOutHandler(e:MouseEvent):void {
			var _targetName:String = "B" + e.target.name.substr(1, 1);
			var _target:MovieClip = e.target.root.getChildByName(_targetName);
			tweenMotion(_target, 0.5, 1, 1);
		}

		private function setBoxBMouseOverHandler(e:MouseEvent):void {
			var _targetName:String = "A" + e.target.name.substr(1, 1);
			var _target:MovieClip = e.target.root.getChildByName(_targetName);
			tweenMotion(_target, 0.5, 1.2, 1.2);
		}

		private function setBoxBMouseOutHandler(e:MouseEvent):void {
			var _targetName:String = "A" + e.target.name.substr(1, 1);
			var _target:MovieClip = e.target.root.getChildByName(_targetName);
			tweenMotion(_target, 0.5, 1, 1);
		}

		private function tweenMotion(target:Object, duration:Number, sx:Number, sy:Number):void {
			TweenLite.to(target, duration, {scaleX:sx, scaleY:sy, ease:Elastic.easeOut } );
		}
	}
}</pre>
<pre class="brush:ActionScript">//BoxA
package {

	import flash.display.MovieClip;
	import flash.display.Sprite;
	import flash.text.TextField;
	import flash.events.*;
	import fl.motion.easing.*;
	import gs.TweenLite;

	public class BoxA extends MovieClip{

		public function BoxA(_x:int, _y:int, _name:String) {
			x = _x;
			y = _y;
			name = _name;
			Num.text = _name;
			mouseChildren = false;
			buttonMode = true;
			addEventListener(MouseEvent.CLICK, setClickHandler);
		}

		private function setClickHandler(e:MouseEvent):void {
			tweenMotion(e.target, 0.5, 1);

			var _targetName:String = "B" + e.target.name.substr(1, 1);
			var _target:MovieClip = e.target.root.getChildByName(_targetName);
			tweenMotion(_target, 0.5, 0.5);
		}

		private function tweenMotion(target:Object, duration:Number, alpha:Number):void {
			TweenLite.to(target, duration, {alpha:alpha, ease:Elastic.easeInOut } );
		}
	}
}</pre>
<pre class="brush:ActionScript">//BoxB
package {

	import flash.display.MovieClip;
	import flash.display.Sprite;
	import flash.text.TextField;
	import flash.events.*;
	import fl.motion.easing.*;
	import gs.TweenLite;

	public class BoxB extends MovieClip {

		public function BoxB(_x:int, _y:int, _name:String) {
			x = _x;
			y = _y;
			name = _name;
			Num.text = _name;
			mouseChildren = false;
			buttonMode = true;
			addEventListener(MouseEvent.CLICK, setClickHandler);
		}

		private function setClickHandler(e:MouseEvent):void {
			tweenMotion(e.target, 0.5, 1);

			var _targetName:String = "A" + e.target.name.substr(1, 1);
			var _target:MovieClip = e.target.root.getChildByName(_targetName);
			tweenMotion(_target, 0.5, 0.5);
		}

		private function tweenMotion(target:Object, duration:Number, alpha:Number):void {
			TweenLite.to(target, duration, {alpha:alpha, ease:Elastic.easeInOut } );
		}
	}
}</pre>
]]></content:encoded>
			<wfw:commentRss>http://blog.flasia.com/archives/28/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>[AS 3.0] 액세스 제어 지정자 (private, protected, internal, public)</title>
		<link>http://blog.flasia.com/archives/9</link>
		<comments>http://blog.flasia.com/archives/9#comments</comments>
		<pubDate>Mon, 06 Oct 2008 01:36:16 +0000</pubDate>
		<dc:creator>Siaa</dc:creator>
				<category><![CDATA[ActionScript 3.0]]></category>
		<category><![CDATA[ActionScript]]></category>
		<category><![CDATA[Flash]]></category>
		<category><![CDATA[액세스 제어 지정자]]></category>

		<guid isPermaLink="false">http://blog.flasia.com/?p=9</guid>
		<description><![CDATA[액세스 제어 지정자란 상속에 있어서 접근의 권한을 어떻게 할 것인가를 정의하는 것이라고 할 수 있다.
각 지정자에 대해서 간단히 정의해 보면
1. 내부 이용자 (자기 자신) &#8211; priva [...]]]></description>
			<content:encoded><![CDATA[<p>액세스 제어 지정자란 상속에 있어서 접근의 권한을 어떻게 할 것인가를 정의하는 것이라고 할 수 있다.<br />
각 지정자에 대해서 간단히 정의해 보면</p>
<p><span style="color: #003366;">1. 내부 이용자 (자기 자신) &#8211; private<br />
2. 계승 이용자 (서브급) &#8211; protected<br />
3. 외부 이용자 (동일 package의 제3자) &#8211; internal<br />
4. 외부 이용자 (다른 package의 제3자) &#8211; public </span></p>
<p>즉, 상속된 것인가? 같은 Package인가? 에 따라 2X2의 4종류로 나뉘게 된다.</p>
<table border="0" cellspacing="0" cellpadding="6" width="600">
<tbody>
<tr>
<td width="280" align="center" valign="middle" bgcolor="#e0e0e0">코드 위치</td>
<td width="100" align="center" valign="middle" bgcolor="#e0e0e0">public</td>
<td width="100" align="center" valign="middle" bgcolor="#e0e0e0">internal</td>
<td width="100" align="center" valign="middle" bgcolor="#e0e0e0">protected</td>
<td width="100" align="center" valign="middle" bgcolor="#e0e0e0">private</td>
</tr>
<tr>
<td align="center" valign="middle" bgcolor="#f0f0f0">변수가 정의된 클래스의 안쪽</td>
<td align="center" valign="middle" bgcolor="#f0f0f0">접근가능</td>
<td align="center" valign="middle" bgcolor="#f0f0f0">접근가능</td>
<td align="center" valign="middle" bgcolor="#f0f0f0">접근가능</td>
<td align="center" valign="middle" bgcolor="#f0f0f0">접근가능</td>
</tr>
<tr>
<td align="center" valign="middle" bgcolor="#f0f0f0">변수가 정의된 클래스와<br />
그 클래스의 자손</td>
<td align="center" valign="middle" bgcolor="#f0f0f0">접근가능</td>
<td align="center" valign="middle" bgcolor="#f0f0f0">접근가능</td>
<td align="center" valign="middle" bgcolor="#f0f0f0">접근가능</td>
<td align="center" valign="middle" bgcolor="#f0f0f0">접근불가</td>
</tr>
<tr>
<td align="center" valign="middle" bgcolor="#f0f0f0">같은 패키지의 다른 클래스</td>
<td align="center" valign="middle" bgcolor="#f0f0f0">접근가능</td>
<td align="center" valign="middle" bgcolor="#f0f0f0">접근가능</td>
<td align="center" valign="middle" bgcolor="#f0f0f0">접근불가</td>
<td align="center" valign="middle" bgcolor="#f0f0f0">접근불가</td>
</tr>
<tr>
<td align="center" valign="middle" bgcolor="#f0f0f0">다른 패키지에서의 접근</td>
<td align="center" valign="middle" bgcolor="#f0f0f0">접근가능</td>
<td align="center" valign="middle" bgcolor="#f0f0f0">접근불가</td>
<td align="center" valign="middle" bgcolor="#f0f0f0">접근불가</td>
<td align="center" valign="middle" bgcolor="#f0f0f0">접근불가</td>
</tr>
</tbody>
</table>
<p>그럼 간단한 예를 통해 알아보자.<br />
<span id="more-9"></span></p>
<pre class="brush:ActionScript">package x {
    public class A {
        private var v1:int;
        protected var v2:int;
        internal var v3:int;
        public var v4:int;

        public function A() {
            v1 = 1; // OK
            v2 = 2; // OK
            v3 = 3; // OK
            v4 = 4; // OK
        }
    }
}</pre>
<p>자기 자신에 대해서는 모두 OK</p>
<pre class="brush:ActionScript">package x {
    public class B extends A {
        public function B() {
            v1 = 1; // Error
            v2 = 2; // OK
            v3 = 3; // OK
            v4 = 4; // OK
        }
    }
}</pre>
<p>동일 Package내에서의 상속의 경우<br />
- private : Error //자기 자신이 아니기 때문에 접근불가<br />
- protected : OK //상속되었기 때문에 접근가능<br />
- internal : OK //동일 Package이기 때문에 접근가능<br />
- public : OK //접근가능</p>
<pre class="brush:ActionScript">package x {
    public class C {
        public function C() {
            var a:A = new A();
            a.v1 = 1; // Error
            a.v2 = 2; // Error
            a.v3 = 3; // OK
            a.v4 = 4; // OK
        }
    }
}</pre>
<p>동일 Package내에서의 다른 클래스(제3자)의 경우<br />
- private : Error //자기 자신이 아니기 때문에 접근불가<br />
- protected : Error //상속되지 않았기 때문에 접근불가<br />
- internal : OK //동일 Package이기 때문에 접근가능<br />
- public : OK //접근가능</p>
<pre class="brush:ActionScript">package y {
    import x.A;
    public class D extends A {
        public function D() {
            v1 = 1; // Error
            v2 = 2; // OK
            v3 = 3; // Error
            v4 = 4; // OK
        }
    }
}</pre>
<p>다른 Package에서 상속받은 경우<br />
- private : Error //자기 자신이 아니기 때문에 접근불가<br />
- protected : OK //상속되었기 때문에 접근가능<br />
- internal : Error //동일 Package가 아니기 때문에 접근불가<br />
- public : OK //접근가능</p>
<pre class="brush:ActionScript">package y {
    import x.A;
    public class E {
        public function E() {
            var a:A = new A();
            a.v1 = 1; // Error
            a.v2 = 2; // Error
            a.v3 = 3; // Error
            a.v4 = 4; // OK
        }
    }
}</pre>
<p>다른 Package에서 상속받지 않은 경우<br />
- private : Error //자기 자신이 아니기 때문에 접근불가<br />
- protected : Error //상속되지 않았기 때문에 접근불가<br />
- internal : Error //동일 Package가 아니기 때문에 접근불가<br />
- public : OK //접근가능</p>
<p>임기응변적인 방식으로, 처음에는 전부 private로 두고, 어디에서 사용될지에 의해 protected→internal→public으로 수정하는 방법이 있겠지만,<br />
구현시에 컴파일 에러를 통해 수정하는 것은 시간도 오래 걸릴것이고 그다지 추천할만한 것은 아니다.<br />
결국, 어떤 클래스로 구성 할 것인가, 어떠한 패키지로 구성 할 것인가에 대한 빈틈없는 설계가 중요한 것이 될 것이다.</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.flasia.com/archives/9/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>[AS 3.0] for each..in 문법</title>
		<link>http://blog.flasia.com/archives/7</link>
		<comments>http://blog.flasia.com/archives/7#comments</comments>
		<pubDate>Thu, 02 Oct 2008 01:25:31 +0000</pubDate>
		<dc:creator>Siaa</dc:creator>
				<category><![CDATA[ActionScript 3.0]]></category>
		<category><![CDATA[ActionScript]]></category>
		<category><![CDATA[Flash]]></category>

		<guid isPermaLink="false">http://blog.flasia.com/?p=7</guid>
		<description><![CDATA[for each..in 를 사용하면 오브젝트, XML, 배열의 모든 요소(값)에 대해서 반복처리를 할 수 있다.
//오브젝트의 반복 처리를 실행

var myObj:Object = {x:20, y: [...]]]></description>
			<content:encoded><![CDATA[<p>for each..in 를 사용하면 오브젝트, XML, 배열의 모든 요소(값)에 대해서 반복처리를 할 수 있다.</p>
<pre class="brush:ActionScript">//오브젝트의 반복 처리를 실행

var myObj:Object = {x:20, y:30};
for each (var num in myObj) {
 trace (num);
}

//출력 :
// 20
// 30</pre>
<p><span id="more-7"></span></p>
<pre class="brush:ActionScript">//XML 또는 XMLList 오브젝트의 반복 처리를 실행. 

var myXML:XML =
Jane
Susan
John
;
for each (var item in myXML.fname) {
 trace(item);
}

//출력
//Jane
//Susan
//John</pre>
<pre class="brush:ActionScript">//배열의 엘리먼트의 반복 처리를 실행할 수도 있음.

var myArray:Array = ["one", "two", "three"];
for each (var item in myArray) {
 trace (item);
}

//출력 :
// one
// two
// three</pre>
]]></content:encoded>
			<wfw:commentRss>http://blog.flasia.com/archives/7/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>
