<?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>پادشاه فلش &#187; برنامه نویسی</title>
	<atom:link href="http://blog.iflashlord.com/category/%d8%a8%d8%b1%d9%86%d8%a7%d9%85%d9%87-%d9%86%d9%88%db%8c%d8%b3%db%8c/feed/" rel="self" type="application/rss+xml" />
	<link>http://blog.iflashlord.com</link>
	<description>دست نوشته های یک پادشاه فلش</description>
	<lastBuildDate>Sat, 31 Jul 2010 05:55:09 +0000</lastBuildDate>
	<language>fa</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.0.1</generator>
		<item>
		<title>Array.indexOf و Array.lastIndexOf در اکشن اسکریپت ۳</title>
		<link>http://blog.iflashlord.com/1389/04/array-indexof-lastindexof-%d8%a7%da%a9%d8%b4%d9%86-%d8%a7%d8%b3%da%a9%d8%b1%db%8c%d9%be%d8%aa-3/</link>
		<comments>http://blog.iflashlord.com/1389/04/array-indexof-lastindexof-%d8%a7%da%a9%d8%b4%d9%86-%d8%a7%d8%b3%da%a9%d8%b1%db%8c%d9%be%d8%aa-3/#comments</comments>
		<pubDate>Sat, 26 Jun 2010 10:48:54 +0000</pubDate>
		<dc:creator>بهروز پولادرگ</dc:creator>
				<category><![CDATA[ادوبی فلش]]></category>
		<category><![CDATA[اکشن اسکریپت]]></category>
		<category><![CDATA[برنامه نویسی]]></category>
		<category><![CDATA[Array]]></category>
		<category><![CDATA[AS3]]></category>
		<category><![CDATA[Boolean]]></category>
		<category><![CDATA[Flash]]></category>
		<category><![CDATA[indexOf]]></category>
		<category><![CDATA[lastIndexOf]]></category>
		<category><![CDATA[Number]]></category>
		<category><![CDATA[Object]]></category>
		<category><![CDATA[Sprite]]></category>
		<category><![CDATA[آرایه]]></category>
		<category><![CDATA[اکشن اسکریپت 3]]></category>
		<category><![CDATA[فلش]]></category>

		<guid isPermaLink="false">http://blog.iflashlord.com/?p=444</guid>
		<description><![CDATA[ساختار کلی : تابع اکشن اسکریپت ۳ خروجی عدد indexOf(searchElement:*, fromIndex:int = 0):int searchElement : عنصری که برای پیدا کرد آن جستجو می کنیم fromIndex : شروع کردن از اندیس تابع اکشن اسکریپت ۳ خروجی عدد lastIndexOf(searchElement:*, fromIndex:int = 0x7fffffff):int searchElement : عنصری که برای پیدا کرد آن جستجو می کنیم fromIndex : شروع کردن [...]]]></description>
			<content:encoded><![CDATA[<p><strong>ساختار کلی :</strong></p>
<p><em>تابع اکشن اسکریپت ۳ خروجی عدد</em></p>
<pre class="brush: as3;">
indexOf(searchElement:*, fromIndex:int = 0):int
</pre>
<p><strong>searchElement  : </strong> عنصری که برای پیدا کرد آن جستجو می کنیم<br />
<strong>fromIndex :</strong> شروع کردن از اندیس</p>
<p><em>تابع اکشن اسکریپت ۳ خروجی عدد</em></p>
<pre class="brush: as3;">
lastIndexOf(searchElement:*,  fromIndex:int = 0x7fffffff):int
</pre>
<p><strong>searchElement  : </strong> عنصری که برای پیدا کرد آن جستجو می کنیم<br />
<strong>fromIndex :</strong> شروع کردن از اندیس</p>
<p><span id="more-444"></span></p>
<p>نحوه استفاده از این متد مثل استفاده از  String.indexOf و String.lastIndexOf  می باشد و شما می توانید به طور مثال  محل قرار گیری یک Object  در یک Array را بدست آورید و یا محل قرار گیری  یک sprite در یک آرایه<strong> (چندمین عنصر بودن آن)</strong> را بدست آورید<br />
در صورتی که  عنصر مورد نظر شما در آرایه موجود نباشد خروجی<strong> -۱</strong> می باشد</p>
<p><strong>حال  به مثالی در این مورد توجه کنید: </strong></p>
<pre class="brush: as3;">
var sprite:Sprite = new Sprite();
var  object:Object = new Object();
var boolean:Boolean = true;
var  number:Number = 10;

var array:Array = new Array(sprite, object,  number);
trace(array.indexOf(sprite)); // 0
trace(array.indexOf(number));  // 2
trace(array.indexOf(boolean)); // -1
</pre>
<p>موفق و پیروز باشید</pre>
]]></content:encoded>
			<wfw:commentRss>http://blog.iflashlord.com/1389/04/array-indexof-lastindexof-%d8%a7%da%a9%d8%b4%d9%86-%d8%a7%d8%b3%da%a9%d8%b1%db%8c%d9%be%d8%aa-3/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>پخش صدا در اکشن اسکریپت ۳ – بخش چهارم</title>
		<link>http://blog.iflashlord.com/1389/03/%d9%be%d8%ae%d8%b4-%d8%b5%d8%af%d8%a7-%d8%af%d8%b1-%d8%a7%da%a9%d8%b4%d9%86-%d8%a7%d8%b3%da%a9%d8%b1%db%8c%d9%be%d8%aa-%db%b3-%d8%a8%d8%ae%d8%b4-%da%86%d9%87%d8%a7%d8%b1%d9%85/</link>
		<comments>http://blog.iflashlord.com/1389/03/%d9%be%d8%ae%d8%b4-%d8%b5%d8%af%d8%a7-%d8%af%d8%b1-%d8%a7%da%a9%d8%b4%d9%86-%d8%a7%d8%b3%da%a9%d8%b1%db%8c%d9%be%d8%aa-%db%b3-%d8%a8%d8%ae%d8%b4-%da%86%d9%87%d8%a7%d8%b1%d9%85/#comments</comments>
		<pubDate>Sat, 19 Jun 2010 20:59:06 +0000</pubDate>
		<dc:creator>بهروز پولادرگ</dc:creator>
				<category><![CDATA[ادوبی فلش]]></category>
		<category><![CDATA[اکشن اسکریپت]]></category>
		<category><![CDATA[برنامه نویسی]]></category>
		<category><![CDATA[actionscript]]></category>
		<category><![CDATA[AS3]]></category>
		<category><![CDATA[Components]]></category>
		<category><![CDATA[Flash]]></category>
		<category><![CDATA[isPlay]]></category>
		<category><![CDATA[linkage]]></category>
		<category><![CDATA[load]]></category>
		<category><![CDATA[MP3]]></category>
		<category><![CDATA[play]]></category>
		<category><![CDATA[position]]></category>
		<category><![CDATA[sound class]]></category>
		<category><![CDATA[SoundChannel]]></category>
		<category><![CDATA[soundTransform]]></category>
		<category><![CDATA[stop]]></category>
		<category><![CDATA[URLRequest]]></category>
		<category><![CDATA[اکشن اسکریپت 3]]></category>
		<category><![CDATA[صدا]]></category>
		<category><![CDATA[فلش]]></category>

		<guid isPermaLink="false">http://blog.iflashlord.com/?p=425</guid>
		<description><![CDATA[با توجه به این که شاید پروژه نهایی ارائه شده در بخش سوم این آموزش کامل نمی باشد ، سعی می کنیم در این بخش از آموزش نکات ریزی که ممکن هست در کار با صدا ها و مثال های ذکر شده در آموزش قبل به آنها بر بخورید را در این مطلب توضیح دهیم  [...]]]></description>
			<content:encoded><![CDATA[<p>با توجه به این که شاید پروژه نهایی ارائه شده در بخش سوم این آموزش کامل نمی باشد ، سعی می کنیم در این بخش از آموزش نکات ریزی که ممکن هست در کار با صدا ها و مثال های ذکر شده در آموزش قبل به آنها بر بخورید را در این مطلب توضیح دهیم  :<br />
<span id="more-425"></span></p>
<p>موردی که در آموزش قبلی احتمالا به آن بر خورده اید ، پخش چند باره با کلیک مجدد بر روی دکمه Play می باشد که این امر به دلیل عدم چک کردن در حال پخش بودن می باشد ، ما در این بخش با ایجاد variable ی با نام isPlay از نوع Boolean و مقدار دهی اولیه true به آن می توانیم با مقدار دهی این متغییر در طول برنامه و با شرطی ساده در تابع مربوز به پخش صدا جلوی پخش مجدد را بگیریم.</p>
<pre class="brush: as3;">
function onClickPlay(e:MouseEvent)
{
	if (! isPlay)
	{
		myChannel = mySound.play(lastPosition);
		myChannel.soundTransform = myTransform;
		isPlay = true;
	}
}
</pre>
<p>مورد بعدی برای مواردی که شما نیاز دارید دکمه Stop را هم به همراه Pause و Play داشته باشید که برای این مورد هم در کد زیر بدون حذف  این مورد می توانید مشاهده نمایید.</p>
<pre class="brush: as3;">
function onClickStop(e:MouseEvent):void
{
	myChannel.stop();
	lastPosition = 0;
	isPlay = false;
}
</pre>
<p>مورد بعدی برای افرادی که کد را به صورت External می نویسند و نیاز به وارد کردن کلاس ها قبل از استفاده از آنها را دارند نیز در کد زیر مجموعه کلاس ها وارد شده قابل مشاهده می باشد.</p>
<blockquote><p>این کد برای تمامی ورژن های نرم افزار فلش که اکشن اسکریپت ۳ را پشتبانی می کنند قابل استفاده می باشد</p></blockquote>
<p><strong>کد نهایی پروژه پخش صدا در اکش اسکریپت ۳ »</strong></p>
<pre class="brush: as3;">
import flash.media.Sound;
import flash.net.URLRequest;
import flash.media.SoundChannel;
import flash.events.MouseEvent;
import flash.media.SoundTransform;

var mySound:Sound = new Sound();
var myChannel:SoundChannel = new SoundChannel();
var myTransform:SoundTransform = new SoundTransform();
var lastPosition:Number = 0;
var isPlay:Boolean = true;
mySound.load(new URLRequest(&quot;myFavSong.mp3&quot;));
myChannel = mySound.play(0);
myTransform.volume = 0.5;
myChannel.soundTransform = myTransform;

pause_btn.addEventListener(MouseEvent.CLICK , onClickPause);
function onClickPause(e:MouseEvent)
{
	lastPosition = myChannel.position;
	myChannel.stop();
	isPlay = false;
}

play_btn.addEventListener(MouseEvent.CLICK , onClickPlay);
function onClickPlay(e:MouseEvent)
{
	if (! isPlay)
	{
		myChannel = mySound.play(lastPosition);
		myChannel.soundTransform = myTransform;
		isPlay = true;
	}
}

stop_btn.addEventListener(MouseEvent.CLICK, onClickStop);

function onClickStop(e:MouseEvent):void
{
	myChannel.stop();
	lastPosition = 0;
	isPlay = false;
}
</pre>
<blockquote><p>
<strong>توصبه می شود ب<a href="../1389/03/%d9%be%d8%ae%d8%b4-%d8%b5%d8%af%d8%a7-%d8%af%d8%b1-%d8%a7%da%a9%d8%b4%d9%86-%d8%a7%d8%b3%da%a9%d8%b1%db%8c%d9%be%d8%aa-3-%d8%a8%d8%ae%d8%b4-%d8%a7%d9%88%d9%84/" target="_blank">خش  اول مبحث پخش صدا در اکشن اسکریپت ۳</a> و </strong><strong><a href="http://blog.iflashlord.com/1389/03/%d9%be%d8%ae%d8%b4-%d8%b5%d8%af%d8%a7-%d8%af%d8%b1-%d8%a7%da%a9%d8%b4%d9%86-%d8%a7%d8%b3%da%a9%d8%b1%db%8c%d9%be%d8%aa-%db%b3-%d8%a8%d8%ae%d8%b4-%d8%af%d9%88%d9%85/" target="_blank">بخش دوم مبحث پخش صدا در اکشن اسکریپت ۳</a> و </strong><a href="http://blog.iflashlord.com/1389/03/%d9%be%d8%ae%d8%b4-%d8%b5%d8%af%d8%a7-%d8%af%d8%b1-%d8%a7%da%a9%d8%b4%d9%86-%d8%a7%d8%b3%da%a9%d8%b1%db%8c%d9%be%d8%aa-%db%b3-%d8%a8%d8%ae%d8%b4-%d8%b3%d9%88%d9%85/" target="_blank"><strong>بخش سوم مبحث پخش صدا در اکشن اسکریپت ۳ </strong></a><strong> را نیز  مطالعه نمایید</strong></p></blockquote>
<p>امید است که از این بخش از آموزش ها نهایت بهره را برده باشید.<br />
موفق و پیروز باشید</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.iflashlord.com/1389/03/%d9%be%d8%ae%d8%b4-%d8%b5%d8%af%d8%a7-%d8%af%d8%b1-%d8%a7%da%a9%d8%b4%d9%86-%d8%a7%d8%b3%da%a9%d8%b1%db%8c%d9%be%d8%aa-%db%b3-%d8%a8%d8%ae%d8%b4-%da%86%d9%87%d8%a7%d8%b1%d9%85/feed/</wfw:commentRss>
		<slash:comments>10</slash:comments>
		</item>
		<item>
		<title>پخش صدا در اکشن اسکریپت ۳ – بخش سوم</title>
		<link>http://blog.iflashlord.com/1389/03/%d9%be%d8%ae%d8%b4-%d8%b5%d8%af%d8%a7-%d8%af%d8%b1-%d8%a7%da%a9%d8%b4%d9%86-%d8%a7%d8%b3%da%a9%d8%b1%db%8c%d9%be%d8%aa-%db%b3-%d8%a8%d8%ae%d8%b4-%d8%b3%d9%88%d9%85/</link>
		<comments>http://blog.iflashlord.com/1389/03/%d9%be%d8%ae%d8%b4-%d8%b5%d8%af%d8%a7-%d8%af%d8%b1-%d8%a7%da%a9%d8%b4%d9%86-%d8%a7%d8%b3%da%a9%d8%b1%db%8c%d9%be%d8%aa-%db%b3-%d8%a8%d8%ae%d8%b4-%d8%b3%d9%88%d9%85/#comments</comments>
		<pubDate>Fri, 18 Jun 2010 16:23:45 +0000</pubDate>
		<dc:creator>بهروز پولادرگ</dc:creator>
				<category><![CDATA[ادوبی فلش]]></category>
		<category><![CDATA[اکشن اسکریپت]]></category>
		<category><![CDATA[برنامه نویسی]]></category>
		<category><![CDATA[actionscript]]></category>
		<category><![CDATA[AS3]]></category>
		<category><![CDATA[Components]]></category>
		<category><![CDATA[Flash]]></category>
		<category><![CDATA[lastPosition]]></category>
		<category><![CDATA[MouseEvent]]></category>
		<category><![CDATA[Pause]]></category>
		<category><![CDATA[SoundChannel]]></category>
		<category><![CDATA[soundTransform]]></category>
		<category><![CDATA[stop]]></category>
		<category><![CDATA[transform]]></category>
		<category><![CDATA[URLRequest]]></category>
		<category><![CDATA[Volume]]></category>
		<category><![CDATA[اکشن اسکریپت 3]]></category>
		<category><![CDATA[صدا]]></category>
		<category><![CDATA[فلش]]></category>

		<guid isPermaLink="false">http://blog.iflashlord.com/?p=410</guid>
		<description><![CDATA[در ادامه  بخش دوم مبحث پخش صدا در اکشن اسکریپت ۳ به بخش آخر این مبحث می پردازیم : Pause کرد صدا در واقع اکشن اسکریپت متدی برای pause کردن صدا ندارد و عملی که می بایست انجام شود Stop کردن صدا می باشد و برای ادامه می بایست عمل play از محل ادامه تعیین [...]]]></description>
			<content:encoded><![CDATA[<blockquote><p>در ادامه <a href="http://blog.iflashlord.com/1389/03/%d9%be%d8%ae%d8%b4-%d8%b5%d8%af%d8%a7-%d8%af%d8%b1-%d8%a7%da%a9%d8%b4%d9%86-%d8%a7%d8%b3%da%a9%d8%b1%db%8c%d9%be%d8%aa-%db%b3-%d8%a8%d8%ae%d8%b4-%d8%af%d9%88%d9%85/" target="_blank"> بخش دوم مبحث پخش صدا در اکشن اسکریپت ۳</a> به بخش آخر این مبحث می پردازیم :</p></blockquote>
<p><strong>Pause </strong><strong>کرد صدا</strong></p>
<p>در واقع اکشن اسکریپت متدی برای pause کردن صدا ندارد و عملی که می بایست انجام شود Stop کردن صدا می باشد و برای ادامه می بایست عمل play از محل ادامه تعیین شود.<br />
این عمل نیاز به این دارد که ما آخرین محل در حال پخش را قبل از Stop کردن دریافت کنیم تا در زمان ادامه دادن بتوان با استفاده از play از ادامه صدا عمل پخش را شروع کنیم.<br />
برای این کار نیاز داریم از soundChannel و خصوصیت .position استفاده کنیم تا بتوانیم این مقدار را در مرحله بعد در متد .play استفاده کنیم.</p>
<p><span id="more-410"></span></p>
<p>برای شروع این پروژه ابتدا از پانل Components دکمه ای را می کشیم و به Stage وارد می کنیم و instance name آن را play_btn قرار می دهیم و label آن را Play قرار می دهیم و دکمه دیگر با instance name ی با مقدار pause_btn قرار دهید یا lable و instance name مربوطه به مثال قبلی را با مقدار های Pause و pause_btn تغییر دهید. در نهایت می بایست مانند تصیر زیر دو دکمه در صفحه داشته باشید.</p>
<p><img class="alignnone size-full wp-image-412" title="sound_as3_p3_1_iflashlord" src="http://blog.iflashlord.com/wp-content/uploads/2010/06/sound_as3_p3_1_iflashlord.gif" alt="" width="261" height="63" /></p>
<p>حال به بخش اکشن اسکریپت بر می گردیم و ابتدا می بایست همه کد های مربوطه به stop_btn مثال قبلی را حذف نمایید.</p>
<p>کد هایی که می بایست حذف شود:</p>
<pre class="brush: as3;">
stop_btn.addEventListener(MouseEvent.CLICK, onClickStop);
function onClickStop(e:MouseEvent):void{
myChannel.stop();
</pre>
<p>برای این که ما آخرین محل پخش شدن را در دسترس داشته باشیم نیاز داریم یک variable ایجاد کنیم و مقدار آخرین محل پخش را در زمان Stop کردن در آن قرار دهیم. ما به راحتی می توانیم یک variable ایجاد کنیم و مقدار آن را به صورت پیش فرض رو صفر ۰ قرار دهیم. ما نام این variable را lastPosition قرار می دهیم به کد زیر دقت نمایید :</p>
<pre class="brush: as3;">
var mySound:Sound = new Sound();
var myChannel:SoundChannel = new SoundChannel();
var lastPosition:Number = 0;
mySound.load(new URLRequest(”myFavSong.mp3″));
myChannel = mySound.play();
</pre>
<p>حال ما به کدهای مربوط به دکمه Pause می پردازیم زمانی که بر روی این دکمه کلیک می شود ما ابتدا به lastPosition مقداری که از SoundChannel ما دریافت می شود و خصوصیت position آن دریافت می کنیم. در زیر به کد مربوطه به pause_btn دقت نمایید :</p>
<pre class="brush: as3;">
var mySound:Sound = new Sound();
var myChannel:SoundChannel = new SoundChannel();
var lastPosition:Number = 0;
mySound.load(new URLRequest(”myFavSong.mp3″));
myChannel = mySound.play();
pause_btn.addEventListener(MouseEvent.CLICK, onClickPause);
function onClickPause(e:MouseEvent):void{
lastPosition = myChannel.position;
myChannel.stop();
}
</pre>
<p>ما حال می بایست در دکمه Play تغییراتی انجام دهیم که تا بتواند در زمان کلیک از آخرین محل عمل پخش را انجام دهد این کار به راحتی با دادن مقدار lastPosition به اولین آرگمان مربوطه به متد Play این کار امکان پذیر می باشد ، اگر توجه کرده باشید در ابتدا مقدار lastPosition را روی ۰ قرار دادیم با این کار در صورتی که تا به حال عمل pause انجام نشده باشد عمل play از محل ۰ که همان ابتدای صوت ما می باشد شروع می شود ، توجه داشته باشید که می بایست متد play را به myChannel نسبت دهید :</p>
<pre class="brush: as3;">
var mySound:Sound = new Sound();
var myChannel:SoundChannel = new SoundChannel();
var lastPosition:Number = 0;
mySound.load(new URLRequest(”myFavSong.mp3″));
myChannel = mySound.play();
pause_btn.addEventListener(MouseEvent.CLICK, onClickPause);
function onClickPause(e:MouseEvent):void{
lastPosition = myChannel.position;
myChannel.stop();
}
play_btn.addEventListener(MouseEvent.CLICK, onClickPlay);
function onClickPlay(e:MouseEvent):void{
myChannel = mySound.play(lastPosition);
}
</pre>
<p>حالا وقت این رسیده که با Ctrl+Enter پروژه خودتون تست نمایید.</p>
<p><strong>تغییر ولوم (</strong><strong>Volume</strong><strong>) صدا</strong></p>
<p>در آخر بخش صدا ها به ولوم صدا و کنترل بر آن توسط SoundChannel می پردازیم ، برای تغییر در ولوم صدا نیاز به استفاده از کلاس SoundTransform و خصوصیت SoundChannel.soundTransform می باشد.</p>
<p>کلاس SoundTransform دارای خصوصیات متغیری می باشد که مهم ترین برای ما .volome می باشد. استفاده از SoundTransform بسیار ساده می باشد همه چیزی که نیاز دارید این است که ابتدا یک متغیر بسازید و کلاس را به آن نسبت دهید و خصوصیات را اعمال نمایید و به خصوصیت .soundTransform مربوط به SoundChannel مربوطه متغیر ساخته شده را اعمال نمایید.</p>
<p>در ادامه کار را با ایجاد نمونه ای از کلاس SoundTransform و اعمال آن به myTransform شروع می کنیم :</p>
<pre class="brush: as3; highlight: [3];">
var mySound:Sound = new Sound();
var myChannel:SoundChannel = new SoundChannel();
var myTransform = new SoundTransform();
var lastPosition:Number = 0;
mySound.load(new URLRequest(&quot;myFavSong.mp3&quot;));
myChannel = mySound.play();

pause_btn.addEventListener(MouseEvent.CLICK, onClickPause);

function onClickPause(e:MouseEvent):void{
lastPosition = myChannel.position;
myChannel.stop();
}

play_btn.addEventListener(MouseEvent.CLICK, onClickPlay);

function onClickPlay(e:MouseEvent):void{
myChannel = mySound.play(lastPosition);
}
</pre>
<p>در این مرحله ما می بایست مقداری به خصوصیت .volume  بر روی این نمونه بدهیم.مقداری مربوطه به خصوصیت .volume مقداری بین ۰ تا ۱ می باشد که ۱ به معنای نهایت ولوم و ۰ به معنای بدون صدا بودن می باشد ، شما می توانید مقدار های اعشاری بین ۰ تا ۱ را برای مقدار دهی استفاده کنید به طور مثال ۰.۵ به معنای ۵۰%  صدا می باشد.</p>
<p>در این مرحله ولوم را بر روی ۰.۵ که صدای متوسط می باشد (۵۰%) قرار می دهیم.</p>
<pre class="brush: as3; highlight: [7];">
var mySound:Sound = new Sound();
var myChannel:SoundChannel = new SoundChannel();
var myTransform = new SoundTransform();
var lastPosition:Number = 0;
mySound.load(new URLRequest(&quot;myFavSong.mp3&quot;));
myChannel = mySound.play();
myTransform.volume = 0.5;

pause_btn.addEventListener(MouseEvent.CLICK, onClickPause);

function onClickPause(e:MouseEvent):void{
lastPosition = myChannel.position;
myChannel.stop();
}

play_btn.addEventListener(MouseEvent.CLICK, onClickPlay);

function onClickPlay(e:MouseEvent):void{
myChannel = mySound.play(lastPosition);
}
</pre>
<p>حال این transform  را به عنوان خصوصیت .soundTransform مربوطه به SoundChannel اعمال می کنیم.</p>
<pre class="brush: as3; highlight: [8];">
var mySound:Sound = new Sound();
var myChannel:SoundChannel = new SoundChannel();
var myTransform = new SoundTransform();
var lastPosition:Number = 0;
mySound.load(new URLRequest(&quot;myFavSong.mp3&quot;));
myChannel = mySound.play();
myTransform.volume = 0.5;
myChannel.soundTransform = myTransform;

pause_btn.addEventListener(MouseEvent.CLICK, onClickPause);

function onClickPause(e:MouseEvent):void{
lastPosition = myChannel.position;
myChannel.stop();
}

play_btn.addEventListener(MouseEvent.CLICK, onClickPlay);

function onClickPlay(e:MouseEvent):void{
myChannel = mySound.play(lastPosition);
}
</pre>
<p>شما می بایست همیشه به یاد داشته باشید استفاده از .soundTransform می بایست <strong>بعد از</strong> قرار دادن شی صدا در channel  شما باشد و نه قبل از آن. شما می توانید ولوم را با تست کردن Movie و صدا را به صورت متوسط بشنوید ولی با Pause و Play کردن صدا متوجه خواهید شد صدا دوباره زیاد می شود ، دلیل این می باشد که زمانی که صدای جدیدی به Channel وارد می کنید  همه soundTransform ها حذف می شود. ما این مورد را با اعمال  دوباره خصوصیت .soundTransform واقع در تابع onClickPlay حل می کنیم :</p>
<pre class="brush: as3; highlight: [21];">
var mySound:Sound = new Sound();
var myChannel:SoundChannel = new SoundChannel();
var myTransform = new SoundTransform();
var lastPosition:Number = 0;
mySound.load(new URLRequest(&quot;myFavSong.mp3&quot;));
myChannel = mySound.play();
myTransform.volume = 0.5;
myChannel.soundTransform = myTransform;

pause_btn.addEventListener(MouseEvent.CLICK, onClickPause);

function onClickPause(e:MouseEvent):void{
lastPosition = myChannel.position;
myChannel.stop();
}

play_btn.addEventListener(MouseEvent.CLICK, onClickPlay);

function onClickPlay(e:MouseEvent):void{
myChannel = mySound.play(lastPosition);
myChannel.soundTransform = myTransform;
}
</pre>
<p>حال movie را تست نمایید و به این نکته دقت کنید که این بار با Pause و Play کردن در ولوم صدا تغییری ایجاد نمی شود.</p>
<blockquote><p>
توصیه می شود <a href="http://blog.iflashlord.com/1389/03/%d9%be%d8%ae%d8%b4-%d8%b5%d8%af%d8%a7-%d8%af%d8%b1-%d8%a7%da%a9%d8%b4%d9%86-%d8%a7%d8%b3%da%a9%d8%b1%db%8c%d9%be%d8%aa-3-%d8%a8%d8%ae%d8%b4-%d8%a7%d9%88%d9%84/" target="_blank">بخش اول صداها در اکشن اسکریپت ۳</a> و <a href="http://blog.iflashlord.com/1389/03/%d9%be%d8%ae%d8%b4-%d8%b5%d8%af%d8%a7-%d8%af%d8%b1-%d8%a7%da%a9%d8%b4%d9%86-%d8%a7%d8%b3%da%a9%d8%b1%db%8c%d9%be%d8%aa-%db%b3-%d8%a8%d8%ae%d8%b4-%d8%af%d9%88%d9%85/" target="_blank">بخش دوم صداها در اکشن اسکریپت ۳ </a> نیز مطالعه شود.</p></blockquote>
]]></content:encoded>
			<wfw:commentRss>http://blog.iflashlord.com/1389/03/%d9%be%d8%ae%d8%b4-%d8%b5%d8%af%d8%a7-%d8%af%d8%b1-%d8%a7%da%a9%d8%b4%d9%86-%d8%a7%d8%b3%da%a9%d8%b1%db%8c%d9%be%d8%aa-%db%b3-%d8%a8%d8%ae%d8%b4-%d8%b3%d9%88%d9%85/feed/</wfw:commentRss>
		<slash:comments>4</slash:comments>
		</item>
		<item>
		<title>پخش صدا در اکشن اسکریپت ۳ – بخش دوم</title>
		<link>http://blog.iflashlord.com/1389/03/%d9%be%d8%ae%d8%b4-%d8%b5%d8%af%d8%a7-%d8%af%d8%b1-%d8%a7%da%a9%d8%b4%d9%86-%d8%a7%d8%b3%da%a9%d8%b1%db%8c%d9%be%d8%aa-%db%b3-%d8%a8%d8%ae%d8%b4-%d8%af%d9%88%d9%85/</link>
		<comments>http://blog.iflashlord.com/1389/03/%d9%be%d8%ae%d8%b4-%d8%b5%d8%af%d8%a7-%d8%af%d8%b1-%d8%a7%da%a9%d8%b4%d9%86-%d8%a7%d8%b3%da%a9%d8%b1%db%8c%d9%be%d8%aa-%db%b3-%d8%a8%d8%ae%d8%b4-%d8%af%d9%88%d9%85/#comments</comments>
		<pubDate>Thu, 17 Jun 2010 11:42:17 +0000</pubDate>
		<dc:creator>بهروز پولادرگ</dc:creator>
				<category><![CDATA[ادوبی فلش]]></category>
		<category><![CDATA[اکشن اسکریپت]]></category>
		<category><![CDATA[برنامه نویسی]]></category>
		<category><![CDATA[actionscript]]></category>
		<category><![CDATA[AS3]]></category>
		<category><![CDATA[Components]]></category>
		<category><![CDATA[Flash]]></category>
		<category><![CDATA[linkage]]></category>
		<category><![CDATA[load]]></category>
		<category><![CDATA[MP3]]></category>
		<category><![CDATA[play]]></category>
		<category><![CDATA[position]]></category>
		<category><![CDATA[sound class]]></category>
		<category><![CDATA[SoundChannel]]></category>
		<category><![CDATA[soundTransform]]></category>
		<category><![CDATA[stop]]></category>
		<category><![CDATA[URLRequest]]></category>
		<category><![CDATA[اکشن اسکریپت 3]]></category>
		<category><![CDATA[صدا]]></category>
		<category><![CDATA[فلش]]></category>

		<guid isPermaLink="false">http://blog.iflashlord.com/?p=395</guid>
		<description><![CDATA[در ادامه  بخش اول مبحث پخش صدا در اکشن اسکریپت ۳ به موارد دیگر ذکر شده در آن مطلب می پردازیم : پخش یک فایل صوتی خارجی (خارج از فلش ) پخش کردن یک فایل صوتی خارجی ساده تر از پخش فایل صوتی داخل فلش می باشد زیرا شما نیازی به وارد کردن فایل برای [...]]]></description>
			<content:encoded><![CDATA[<blockquote><p>در ادامه  <a href="http://blog.iflashlord.com/1389/03/%d9%be%d8%ae%d8%b4-%d8%b5%d8%af%d8%a7-%d8%af%d8%b1-%d8%a7%da%a9%d8%b4%d9%86-%d8%a7%d8%b3%da%a9%d8%b1%db%8c%d9%be%d8%aa-3-%d8%a8%d8%ae%d8%b4-%d8%a7%d9%88%d9%84/" target="_blank">بخش اول مبحث پخش صدا در اکشن اسکریپت ۳</a> به موارد دیگر ذکر شده در آن مطلب می پردازیم :</p></blockquote>
<p><strong><br />
پخش یک فایل صوتی خارجی (خارج از فلش )</strong></p>
<p>پخش کردن یک فایل صوتی خارجی ساده تر از پخش فایل صوتی داخل فلش می باشد زیرا شما نیازی به وارد کردن فایل برای ساخت کلاسی برای فراخوانی فایل ندارید.</p>
<p style="text-align: right;">برای شروع یک پروژه جدید فلش ایجاد کنید و آن را در محلی مثل دسکتاپ ذخیره کنید و فایل .mp3 مربوطه را نیر در همان محل قرار دهید و فایل صوتی را به myFavSong.mp3 تغییر نام دهید.</p>
<p style="text-align: right;"><span id="more-395"></span></p>
<p style="text-align: center;"><img class="size-full wp-image-396    aligncenter" title="sound_as3_p2_1_iflashlord" src="http://blog.iflashlord.com/wp-content/uploads/2010/06/sound_as3_p2_1_iflashlord.jpg" alt="" width="205" height="137" /></p>
<p>حال به پروژه FLa خود برگردید و پنل اکشن را باز نمایید با دکمه F9 و نوشتن کد را شروع می کنیم ، در ابتدا سراغ ساختن new از کلاس Sound می نمایید و آن را به mySound مقدار دهی می کنیم و بعد با استفاده از متد .load این کلاس اقدام به بارگزاری فایل مریوطه می کنیم و در نهایت با استفاده از متد .play اقدام به پخش صدای بارگزاری شده می نماییم.</p>
<p><strong>در زیر به که موارد ذکر شده دقت نمایید</strong><strong> :<br />
</strong></p>
<pre class="brush: as3;">
var mySound:Sound = new Sound();
mySound.load(new URLRequest(”myFavSong.mp3″));
mySound.play();
</pre>
<p><strong><br />
</strong><br />
همان طور که در کد بالا مشاهده می کنید برای استفاده از آدرس یک فایل در بخش load در AS3 از کلاس URLRequerst استفاده می کنیم برای اطلاعات بیشتر در مورد این کلاس می توانید به راهنمای نرم افزار فلش مراجعه نمایید. شما هم اکنون می توانید پروژه را تست نمایید و پخش شدن فایل خارجی بارگزاری شده را تست نمایید.</p>
<p><strong>Stop </strong><strong>کردن صدا</strong><strong><br />
</strong><br />
تا اینجا درباره انواع پخش کردن صدا با اکشن صحبت کردیم در ادامه به نحوه Stop کردن و یک مثال خواهیم پرداخت.<br />
نکته ای که وجود دارد این است که کلاس Sound متدی برای Stop کردن صدا ندارد و ما برای این کار می بایست از کلاس SoundChannel کمک بگیریم. ما می بایست یک SoundChannel یا کانال صوتی ایجاد کنیم و عملکرد متد play کلاس Sound رو با اون برابر قرار بدیم تا بتونیم از متد SoundCannel برای صدای خودمون استفاده کنیم.</p>
<p>در زیر به توضیحی از متدهای کلاس SoundChannel می پردازیم:</p>
<ul>
<li>.stop() –این متد صدای که درون کانال مورد نظری در حال پخش است را Stop می کند.</li>
<li>.position – این متد محل جاری صدای در حال      پخش را در کانال مورد نظر ما بر می گرداند.</li>
<li>.soundTransform – برای تغییر صدا مثل ولوم و جا به      جایی بین پخش سمت چپ و راست می باشد.</li>
</ul>
<p>در ادامه ما یک پروژه جدید فلش ایجاد می کنیم و قصد داریم یه فایل صوتی خارجی را بارگزاری و پخش کنیم و با یک دکمه Stop در زمان کلیک بر روی آن عمل پخش را Stop نماییم</p>
<p>در مرحله اول یک دکمه Button از پانل کامپوننت ها Window&gt;Components درگ کرده و در صفحه قرار دهید و instance name آن را stop_btn قرار دهید ، شما می تونید از تب پارامتر های کامپوننت lable دکمه را به Stop تغییر دهید.</p>
<p><img class="alignnone size-full wp-image-397" title="sound_as3_p2_2_iflashlord" src="http://blog.iflashlord.com/wp-content/uploads/2010/06/sound_as3_p2_2_iflashlord.jpg" alt="" width="464" height="170" /></p>
<p>هم اکنون دکمه ای ایجاد کردیم که در زمان کلیک بر روی آن صدا می بایست Stop شود.<br />
پنل اکشن را باز نمایید و یا بر روی تنها فریم موجود در تایم لاین TimeLine راست کلیک کرد و Actions را انتخاب نمایید تا پانل اکشن نمایش داده شود.</p>
<p>مرحله بعد شروع نوشتن کد ها می باشد طبق کدهایی که در مرحله های قبلی توضیح دادیم کلاس Sound را برای بارگزاری صدا ایجاد می کنیم و صدا را با متد play پخش می کنیم.</p>
<pre class="brush: as3;">
var mySound:Sound = new Sound();
mySound.load(new URLRequest(”myFavSong.mp3″));
mySound.play();
</pre>
<p>ما برای کنترل بر روی صدا و اعمال متد Stop همان طور که در اول هم گفتیم می بایست از SoundChannel استفاده کنیم در کدی در زیر می بینید ما این کلاس تعریف کردیم:</p>
<pre class="brush: as3;">
var mySound:Sound = new Sound();
var myChannel:SoundChannel = new SoundChannel();
mySound.load(new URLRequest(”myFavSong.mp3″));
mySound.play();
</pre>
<p>برای این که کلاس SoundChannel بر روی صدای ما کنترل داشته باشد نیاز به این داریم که پیوندی بین این دو ایجاد نماییم و این کار را با جا به جایی خط آخر کد بالا انجام می دهیم ، در واقع عمل play را به کلاس SoundChannel که در اینجا با myChannel تعریف شده می دهیم.</p>
<pre class="brush: as3;">
var mySound:Sound = new Sound();
var myChannel:SoundChannel = new SoundChannel();
mySound.load(new URLRequest(”myFavSong.mp3″));
myChannel = mySound.play();
</pre>
<p>حال به راحتی می توانید با ایجاد رویداد برای دکمه از متد stop مریوط به کلاس SoundChannel استفاده کنیم.</p>
<pre class="brush: as3;">
var mySound:Sound = new Sound();
var myChannel:SoundChannel = new SoundChannel();
mySound.load(new URLRequest(”myFavSong.mp3″));
myChannel = mySound.play();

stop_btn.addEventListener(MouseEvent.CLICK, onClickStop);

function onClickStop(e:MouseEvent):void{
myChannel.stop();
}
</pre>
<p>حال می توانید پروژه را تست نمایید در زمان اجرا به صورت خودکار صدا می بایست پخش شود و با کلیک بر روی دکمه Stop می بایست صداد Stop شود.</p>
<blockquote><p><strong> توصبه می شود ب<a href="../1389/03/%d9%be%d8%ae%d8%b4-%d8%b5%d8%af%d8%a7-%d8%af%d8%b1-%d8%a7%da%a9%d8%b4%d9%86-%d8%a7%d8%b3%da%a9%d8%b1%db%8c%d9%be%d8%aa-3-%d8%a8%d8%ae%d8%b4-%d8%a7%d9%88%d9%84/" target="_blank">خش  اول مبحث پخش صدا در اکشن اسکریپت ۳</a> را نیز مطالعه نمایید</strong></p></blockquote>
]]></content:encoded>
			<wfw:commentRss>http://blog.iflashlord.com/1389/03/%d9%be%d8%ae%d8%b4-%d8%b5%d8%af%d8%a7-%d8%af%d8%b1-%d8%a7%da%a9%d8%b4%d9%86-%d8%a7%d8%b3%da%a9%d8%b1%db%8c%d9%be%d8%aa-%db%b3-%d8%a8%d8%ae%d8%b4-%d8%af%d9%88%d9%85/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>پخش صدا در اکشن اسکریپت ۳ &#8211; بخش اول</title>
		<link>http://blog.iflashlord.com/1389/03/%d9%be%d8%ae%d8%b4-%d8%b5%d8%af%d8%a7-%d8%af%d8%b1-%d8%a7%da%a9%d8%b4%d9%86-%d8%a7%d8%b3%da%a9%d8%b1%db%8c%d9%be%d8%aa-3-%d8%a8%d8%ae%d8%b4-%d8%a7%d9%88%d9%84/</link>
		<comments>http://blog.iflashlord.com/1389/03/%d9%be%d8%ae%d8%b4-%d8%b5%d8%af%d8%a7-%d8%af%d8%b1-%d8%a7%da%a9%d8%b4%d9%86-%d8%a7%d8%b3%da%a9%d8%b1%db%8c%d9%be%d8%aa-3-%d8%a8%d8%ae%d8%b4-%d8%a7%d9%88%d9%84/#comments</comments>
		<pubDate>Wed, 16 Jun 2010 13:22:15 +0000</pubDate>
		<dc:creator>بهروز پولادرگ</dc:creator>
				<category><![CDATA[ادوبی فلش]]></category>
		<category><![CDATA[اکشن اسکریپت]]></category>
		<category><![CDATA[برنامه نویسی]]></category>
		<category><![CDATA[actionscript]]></category>
		<category><![CDATA[AS3]]></category>
		<category><![CDATA[Flash]]></category>
		<category><![CDATA[linkage]]></category>
		<category><![CDATA[MP3]]></category>
		<category><![CDATA[play]]></category>
		<category><![CDATA[sound class]]></category>
		<category><![CDATA[اکشن اسکریپت 3]]></category>
		<category><![CDATA[صدا]]></category>
		<category><![CDATA[فلش]]></category>

		<guid isPermaLink="false">http://blog.iflashlord.com/?p=385</guid>
		<description><![CDATA[در این آموزش به پخش صدا در ActionScript 3.0 می پردازیم و به موارد مثل پخش صدا از فایل های داخلی و خارجی و تغییر ولوم صدا ها می پردازیم ، با این که این به بحث بسیار گسترده میباشد که به دلیل پیشرفته بودن و نیاز داشتن به پیش نیاز به این بحث در [...]]]></description>
			<content:encoded><![CDATA[<p>در این آموزش به پخش صدا در ActionScript 3.0 می پردازیم و به موارد مثل پخش صدا از فایل های داخلی و خارجی و تغییر ولوم صدا ها می پردازیم ، با این که این به بحث بسیار گسترده میباشد که به دلیل پیشرفته بودن و نیاز داشتن به پیش نیاز به این بحث در حال و ادامه آن به صورت پیشرفته انشاء الله در آینده خواهیم پرداخت.</p>
<p>این آموزش به بخش های زیر تقسیم بندی شده است :</p>
<ol>
<li>مقدمه ای بر کار با کلاس های صدا      در اکشن اسکریپت ۳.</li>
<li>پخش یک صدای داخلی.</li>
<li>پخش یک صدای خارجی.</li>
<li>Stop کردن یک صدا.</li>
<li>Pause کردن یک صدا.</li>
<li>تغییر ولوم صدا.</li>
</ol>
<p><span id="more-385"></span><strong>مقدمه ای بر کار با کلاس های صدا در اکشن اسکریپت ۳</strong><strong><br />
</strong>برای کار کردن با صدا ها در ActionScript 3.0 نیاز به همیاری گرفتن از چندین کلاس با هم می باشد. البته بیشتر موارد شبیه به ورژن های قبلی میباشد و کنترل در ورژن جدید بیشتر و با دقت بالاتری انجام می شود، در زیر لیستی از کلاس های مرتبط را با توضیح می آوریم.</p>
<ol>
<li>Sound Class &#8211; این کلاس اصلی مربوط به صدا ها      می باشد ، این صدا برای محل شروع کد مربوطه به صدا می باشد و برای شروع پخش      صدا استفاده می شود.</li>
<li>SoundChannel Class &#8211; یک شی صدا می تواند در کانال های      مختلف پخش شود ، این کلاس امکانات را جهت کانال های صوتی برای کنترل بر روی      یک شی صدا در اختیار ما قرار می دهد که این کنترل ها به صورت ساده شامل امکان stop کردن پخش یک صدا می شود و&#8230;.</li>
<li>SoundTransform Class -این کلاس برای کنترل بر ولوم صدا      و بالانس صدا به سمت چپ و راست استفاده می شود.</li>
<li>SoundMixer Class -این کلاس به صورت عمومی برای فلش      پلیر می باشد که توابع کنترلی بر روی تمامی صدا ها را در اختیار شما قرار می      دهد به صورت مثال ساده ایست کردن تمامی صداهای فلش پلیر و&#8230;</li>
</ol>
<p>سعی شده در مورد موارد بالا در ادامه مطلب نکاتی ذکر شود ولی برای اطلاع کامل از متدهای این کلاس ها بهتر می باشد از راهنمای موجود در نرم افزار فلش استفاده نمایید.</p>
<p><strong>پخش یک صدای داخلی</strong><br />
به صورت عادی فلش فقط فرمت mp3 (البته در فلش پلیر ۱۰ امکانات پشتیبانی جدیدی هم افزوده شده که در مطالب بعدی بحث خواهد شد) را پشتیبانی می کند و به راحتی می توانید این نوع فایل را با استفاده از کلاس صدا Sound class مورد استفاده قرار بدهید ، کلاس Sound توانایی پخش فایل های صوتی داخلی فلش (mp3) را داراست و یا فایل های خارجی (فایل های ی که خارج از برنامه فلش هستند) در ادامه ما به پخش یک فایل که به صورت داخلی (داخل پروژه فلش fla) می باشد می پردازیم و با اکشن اسکریپت آن را فراخوانی و پخش خواهیم نمود.</p>
<p>در مثال زیر نیاز به یک فایل mp3 برای پخش می باشد.</p>
<p>در مرحله اول شما نرم افزار فلش را باز کرده و یک پروژه جدید فلش AS3 باز نمایید و به File&gt;Import&gt;Import to Library رفته و بعد از کلیک فایل مورد نظر خود را از نوع Mp3 را انتخاب کرده و روی open کلیک نمایید ، در زیر تصویر از محل مربوطه برای وارد کردن فایل را مشاهده می کنید.</p>
<p><img title="sound_as3_iflashlord" src="../wp-content/uploads/2010/06/sound_as3_iflashlord.jpg" alt="" width="466" height="117" /></p>
<p>خوب تا اینجا فایل شما وارد فلش شد حال کتابخانه فلش را با دکمه های (Ctrl+L) باز نمایید و صدایی که وارد نمودید را در آن بیابید ، ما می خواهیم فایل را با تعیین کردن مشخصه Linkage برای استفاده در اکشن اسکریپت و فراخوانی آن آماده کنیم ، بر روی فایل صدا در کتابخانه فلش کلیک راست نمایید و گزینه Linkage را اتخاب نمایید تا پنجره مربوطه باز شود ، تیک درون Export for ActionScript را بزنید و نام صدای خود را در بخش Class وارد نمایید به طور مثال MyFavSong را وارد می کنیم و روی OK کلیک کنید ، حال شما پیغام هشدار مبنی بر این که کلاس خورجی ایجاد می شود دریافت خواهید نمود که برای ادامه بر روی OK کلیک می کنیم.<br />
با این کار شما می توانید این فایل صورتی را با کلاس MyfavSong در اکشن اسکریپت فراخوانی نمایید.</p>
<p><img class="alignnone size-full wp-image-389" title="sound2_as3_iflashlord" src="http://blog.iflashlord.com/wp-content/uploads/2010/06/sound2_as3_iflashlord.jpg" alt="" width="466" height="262" /></p>
<p>هم اکنون ما یک فایل Mp3 داریم که برای استفاده در اکشن اسکریپت آماده می باشد هم اکنون زمان نوشتن کد می باشد بر روی یکی از فریم های تایم لاین کلیک کرده و از منوی راست کلیک Actions را انتخاب نمایید برای نمایش پانل اکشن. کلید میان بر F9 می باشد.</p>
<p>برای این که ار صدا استفاده کنیم می بایست از new استفاده کرده و کلاس مربوطه را به یک var از نوع Sound بدهیم و حال می توانیم متدهای کلاس رو فراخوانی کرده و مثلا با .play() اقدام به پخش آن نماییم.</p>
<pre class="brush: as3;">
var mySound:Sound = new MyFavSong();
mySound.play();
</pre>
<p>در کلاس Sound با متد .play() می توانید یک صدا را پخش نمایید ، به صورت پیش فرض این متد صدا را از ابتدا پخش می نماید شما با وارد کردن عددی بر حسب میلی ثانیه میتوانید محل شروع را تغییر دهید این مقدار عددی می بایست به عنوان آرگمان متد Play وارد شود.</p>
<p>برای مثال :</p>
<pre class="brush: as3;">
mySound.play(150)
</pre>
<p>برای تست دکمه های (Ctrl+Enter) را بفشارید&#8230;&#8230;<br />
و نتیجه را مشاهده نمایید.</p>
<blockquote><p><strong> توصبه می شود <a href="http://blog.iflashlord.com/1389/03/%D9%BE%D8%AE%D8%B4-%D8%B5%D8%AF%D8%A7-%D8%AF%D8%B1-%D8%A7%DA%A9%D8%B4%D9%86-%D8%A7%D8%B3%DA%A9%D8%B1%DB%8C%D9%BE%D8%AA-%DB%B3-%D8%A8%D8%AE%D8%B4-%D8%AF%D9%88%D9%85/" target="_blank">بخش دوم مبحث پخش صدا در اکشن اسکریپت ۳ </a>را نیز مطالعه نمایید</strong></p></blockquote>
]]></content:encoded>
			<wfw:commentRss>http://blog.iflashlord.com/1389/03/%d9%be%d8%ae%d8%b4-%d8%b5%d8%af%d8%a7-%d8%af%d8%b1-%d8%a7%da%a9%d8%b4%d9%86-%d8%a7%d8%b3%da%a9%d8%b1%db%8c%d9%be%d8%aa-3-%d8%a8%d8%ae%d8%b4-%d8%a7%d9%88%d9%84/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>پیوند میان دو Object در JavaScript</title>
		<link>http://blog.iflashlord.com/1389/03/merge-two-object-in-javascript/</link>
		<comments>http://blog.iflashlord.com/1389/03/merge-two-object-in-javascript/#comments</comments>
		<pubDate>Thu, 03 Jun 2010 14:44:59 +0000</pubDate>
		<dc:creator>بهروز پولادرگ</dc:creator>
				<category><![CDATA[برنامه نویسی]]></category>
		<category><![CDATA[جاوا اسکریپت]]></category>
		<category><![CDATA[hasOwnProperty]]></category>
		<category><![CDATA[JavaScript]]></category>
		<category><![CDATA[merge two object]]></category>
		<category><![CDATA[Object]]></category>
		<category><![CDATA[prototype]]></category>
		<category><![CDATA[پیوند دو آبجکت]]></category>

		<guid isPermaLink="false">http://blog.iflashlord.com/?p=264</guid>
		<description><![CDATA[سلام دوستان عزیز ، پیرو آموزش های کوتاه و کاربردی که چندی پیش شروع کردم این بار به موضوعی در جاوااسکریپت می پردازیم ، امکان دارد که برای شما پیش آمده باشد که نیاز داشته باشید یک Object را بهObject دیگر پیوند بزنید ، چه راه حلی به ذهنتان رسیده ؟ فرض بر این هست [...]]]></description>
			<content:encoded><![CDATA[<p>سلام دوستان عزیز ، پیرو آموزش های کوتاه و کاربردی که چندی پیش شروع کردم این بار به موضوعی در جاوااسکریپت می پردازیم ، امکان دارد که برای شما پیش آمده باشد که نیاز داشته باشید یک Object را بهObject دیگر پیوند بزنید ، چه راه حلی به ذهنتان رسیده ؟ فرض بر این هست که یکی یا هر دو Object های ما در مسیر برنامه می بایست چندین بار مقدار دهی و پیوند زده بشود ، پس عملا روش ایجاد Object برای هر بار استفاده برای ما مقدور نیست &#8230;</p>
<p>چند راه حل برای این کار وجود دارد که روش اول استفاده ساده از یک حلقه for می باشد که در زیر کد مربوطه را مشاهده می کنید :</p>
<pre class="brush: jscript;">
var a = { 'foo': 'bar', 'baz': 'bat' };
var b = { 'foo': 'quux' };
for (prop in a) {
 if (prop in b) { continue; }
 b[prop] = a[prop];
}
</pre>
<p>در کد بالا ما ابتدا Object با نام a را پیمایش می کنیم و در صورتی که خصوصیت جدید در b وجود نداشته باشد (که توسط شرط در کد تست می شود) خصوصیت a به b افزوده می شود.</p>
<p>به همین سادگی ، البته برای این کار می توان از روش های دیگری هم استفاده کرد و کار اصولی تری انجام داد که بتوان از آن در تمام مسیر یک پروژه استفاده کرد</p>
<p>یکی از این کارهای استفاده از گسترش برای متد Object می باشد ، ما با تعریف یک Prototype برای Object به نام merge  در هر جایی از کد می توانید با فراخوانی این متد از آن بهره ببریم</p>
<p><span id="more-264"></span></p>
<p>البته این مورد برای مواردی که احتمال می دهید بیش از یک بار نیاز به استفاده دارید ، بسیاز توصیه میشود&#8230;</p>
<p>کد مربوطه :</p>
<pre class="brush: jscript;">
Object.prototype.merge = (function (ob) {
var o = this;
var i = 0;
for (var z in ob) {
 if (ob.hasOwnProperty(z)) {o[z] = ob[z];
 }
}
return o;
})
</pre>
<p>و روش استفاده :</p>
<pre class="brush: jscript;">
var a = {a:1}
var b = {b:2}

var c = a.merge(b); //نتیجه {a:1,b:2}
</pre>
<p>امیداورم مورد استفادتون قرار گرفته باشه&#8230;</p>
<p>موفق و پیروز باشید <img src='http://blog.iflashlord.com/wp-includes/images/smilies/icon_wink.gif' alt=';)' class='wp-smiley' /> </p>
]]></content:encoded>
			<wfw:commentRss>http://blog.iflashlord.com/1389/03/merge-two-object-in-javascript/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>استفاده از SetInterval در اکشن اسکریپت ۳</title>
		<link>http://blog.iflashlord.com/1388/12/%d8%a7%d8%b3%d8%aa%d9%81%d8%a7%d8%af%d9%87-%d8%a7%d8%b2-setinterval-%d8%af%d8%b1-%d8%a7%da%a9%d8%b4%d9%86-%d8%a7%d8%b3%da%a9%d8%b1%db%8c%d9%be%d8%aa-3/</link>
		<comments>http://blog.iflashlord.com/1388/12/%d8%a7%d8%b3%d8%aa%d9%81%d8%a7%d8%af%d9%87-%d8%a7%d8%b2-setinterval-%d8%af%d8%b1-%d8%a7%da%a9%d8%b4%d9%86-%d8%a7%d8%b3%da%a9%d8%b1%db%8c%d9%be%d8%aa-3/#comments</comments>
		<pubDate>Thu, 11 Mar 2010 17:12:05 +0000</pubDate>
		<dc:creator>بهروز پولادرگ</dc:creator>
				<category><![CDATA[ادوبی فلش]]></category>
		<category><![CDATA[اکشن اسکریپت]]></category>
		<category><![CDATA[برنامه نویسی]]></category>
		<category><![CDATA[actionscript]]></category>
		<category><![CDATA[AS3]]></category>
		<category><![CDATA[clearInterval]]></category>
		<category><![CDATA[setInterval]]></category>
		<category><![CDATA[اکشن اسکریپت 3]]></category>
		<category><![CDATA[فلش]]></category>

		<guid isPermaLink="false">http://blog.iflashlord.com/?p=224</guid>
		<description><![CDATA[همان طور که می دانید در اکشن ۳ امکانی مثل Timer Class افزوده شده که می توان از آن برای انجام کارهای در بازه های زمانی هم استفاده کرد ولی متد ساده تری نیز وجود دارد (setInterval) که در ایم مطلب قصد توضیح آن را داریم : توضیح درباره setInterval : متدی می باشد که [...]]]></description>
			<content:encoded><![CDATA[<p style="text-align: center;">
<p>همان  طور که  می دانید در اکشن ۳ امکانی مثل Timer Class افزوده شده که می توان  از آن برای انجام کارهای در بازه های زمانی هم استفاده کرد ولی متد ساده  تری نیز وجود دارد (setInterval) که در ایم مطلب قصد توضیح آن را داریم :<br />
<strong><br />
توضیح  درباره setInterval  :</strong></p>
<p>متدی می باشد که می تواند یک سری کد را  در بازه زمانی که توسط مقداری بر اساس میلی ثانیه تعیین می شود را اجرا  و  تکرار نماید ، به صورت سفارسی این کدها می بایت در قالب تابعی function  تعرف بشوند و به setInterval  داده شوند.</p>
<p><strong>ساختار کلی setInterval  :</strong></p>
<pre class="brush: as3;">setInterval (myFunction, myTimeLapse);</pre>
<p>myFunction  :  تابعی که شامل کد های مورد نظر شما می باشد<br />
myTimeLapse : مقداری بر  اساس میلی ثانیه milliseconds</p>
<p><span id="more-224"></span></p>
<p>مثالی بسیار ساده ، در زیر به کدی می  پردازیم که مقدار Hello IFLashLord.Com! را هر ۲ ثانیه یک بار اجرا نمایید :</p>
<pre class="brush: as3;">function  helloFun():void {
trace(&quot;Hello IFLashlord.Com!&quot;);
}
setInterval(helloFun,2000);
</pre>
<p>همان  طور که در کد مشاهده می شود با تعریف یک تابع ساده و فراخوانی آن در  setInterval می توانیم آن را در هر بازه زمانی تکرار نماییم. توجه داشته  باشید طبق این کد اولین اجرا تابع helloFun بعد از دو ثانیه انجام خواهد شد  و هر دوثانیه تکرار خواهد شد.</p>
<p>همان طور که مشاهده می کنید نتیجه  این کد تا ابد ادامه خواهد داشت و شاید شما بخواهید در بازه ای از زمان این  عمل قطع شود برای این کار نیز متدی در نظر گرفته شده که در ادامه درباره  آن توضیح می دهیم(clearInterval)</p>
<p><strong>توضیح درباره  clearInterval : </strong><br />
این متد برای ایست نمودن فعالیت یک setInterval می  باشد که البته قبلا مقدار آن در یک متغیر variable وارد شده باشد ، در  صورتی که یک setInterval بدون تعریف Var ایحاد شده باشد امکان دسترسی و  ایست نمودن آن وجود ندارد ، در ادامه در مثالی دقیق تر این موضوع را متوجه  خواهید شد.</p>
<p><strong>ساختار کلی </strong><strong>clearInterval </strong><strong>:</strong></p>
<pre class="brush: as3;">clearInterval(myInterval);</pre>
<p>myInterval  : متغییری شامل یک setInterval</p>
<p><strong>مثال :</strong></p>
<pre class="brush: as3;">function  helloFun():void {
trace(&quot;Hello IFLashlord.Com!&quot;);
}
var  myInterval:uint = setInterval (helloFun, 2000);
clearInterval(myInterval);
</pre>
<p>در  مثال بالا ابتدا setInterval را به متغیر myInterval دادیم تا بتوانیم در  هر جایی از کد آن را توسط clearInterval ایست نماییم ، توجه کنید در کد  بالا عملا قبل از اجرای اولین بار کد عملکرد ایست می شود و  این مثال فقط  برای روشن شدن موضوع قرار داده شده است و شما می توانید در صورت صحیح بودن  شرطی و یا موضوعی دیگر عمل ایست را اجرا نمایید.</p>
<p><strong>مثالی  کاربری : </strong></p>
<p>در این مثال دکمه ای ایجاد می کنیم که در صفحه توسط  setInterval حرکت کند و با کلیک بر روی دکمه توسط clearInterval ایست شود.</p>
<p>ابتدا  یک پروژه جدید AS3 در فلش ایجاد نمایید و از Window&gt;Components  کامپوننت Button را انتخاب کنید و به درون صفحه بکشید و در سمت چپ صفحه  قرار دهید و سپس آن را انتخاب کرده و از پانل Properties Inspector بخش  instance name را برابر my_btn قرار دهید.</p>
<p><a href="http://blog.iflashlord.com/wp-content/uploads/2010/03/properties-inspector_iflashlord.gif" target="_blank"><img class="alignnone size-full wp-image-431" title="properties-inspector_iflashlord" src="http://blog.iflashlord.com/wp-content/uploads/2010/03/properties-inspector_iflashlord.gif" alt="" width="471" height="113" /></a></p>
<p>و حال وارد پانل اکشن شوید ، در اینجا ما  تابعی به نام moveBtn ایجاد می کنیم و در آن مقدار مختصات x را افزایش می  دهیم که با این کار هر بار تابع اجرا شود به مختصات فعلی آن ۱۰ واحد افزوده  خواهد شد ، به کد دقت نمایید :</p>
<pre class="brush: as3;">function moveBtn():void {
my_btn.x  += 10;
}</pre>
<p>و حال کد نهایی را می  نویسم :</p>
<pre class="brush: as3;">function  moveBtn():void {
my_btn.x += 10;
}
var  myInterval:uint = setInterval (moveBtn, 500);
my_btn.addEventListener(MouseEvent.CLICK,  stopMe);
function stopMe(e:MouseEvent):void{
clearInterval(myInterval);
}</pre>
<p>در  کد بالا ابتدا تابعی برای حرکت ایجاد شد و در مرحله بعد setIntervar ایجاد  شد و در مرحله بعد رویداد کلیک به دکمه افزوده شد که به تایع stopMe اشاره  داد و در این تابع از clearInterval استفاده شد و عمل setInterval  ایست  شد.</p>
<p>موفق و پیروز باشید <img src='http://blog.iflashlord.com/wp-includes/images/smilies/icon_wink.gif' alt=';)' class='wp-smiley' /> </p>
]]></content:encoded>
			<wfw:commentRss>http://blog.iflashlord.com/1388/12/%d8%a7%d8%b3%d8%aa%d9%81%d8%a7%d8%af%d9%87-%d8%a7%d8%b2-setinterval-%d8%af%d8%b1-%d8%a7%da%a9%d8%b4%d9%86-%d8%a7%d8%b3%da%a9%d8%b1%db%8c%d9%be%d8%aa-3/feed/</wfw:commentRss>
		<slash:comments>6</slash:comments>
		</item>
		<item>
		<title>navigateToURL در اکشن اسکریپت ۳</title>
		<link>http://blog.iflashlord.com/1388/11/navigatetourl-%d8%af%d8%b1-%d8%a7%da%a9%d8%b4%d9%86-%d8%a7%d8%b3%da%a9%d8%b1%db%8c%d9%be%d8%aa-3/</link>
		<comments>http://blog.iflashlord.com/1388/11/navigatetourl-%d8%af%d8%b1-%d8%a7%da%a9%d8%b4%d9%86-%d8%a7%d8%b3%da%a9%d8%b1%db%8c%d9%be%d8%aa-3/#comments</comments>
		<pubDate>Sun, 14 Feb 2010 21:21:33 +0000</pubDate>
		<dc:creator>بهروز پولادرگ</dc:creator>
				<category><![CDATA[ادوبی فلش]]></category>
		<category><![CDATA[اکشن اسکریپت]]></category>
		<category><![CDATA[برنامه نویسی]]></category>
		<category><![CDATA[AS3]]></category>
		<category><![CDATA[Flash]]></category>
		<category><![CDATA[MouseEvent]]></category>
		<category><![CDATA[navigateToURL]]></category>
		<category><![CDATA[URLRequest]]></category>
		<category><![CDATA[اکشن اسکریپت 3]]></category>
		<category><![CDATA[فلش]]></category>

		<guid isPermaLink="false">http://blog.iflashlord.com/?p=190</guid>
		<description><![CDATA[یکی از مواردی که به احتمال زیاد هر فردی نیاز خواهد داشت افزودن لینک به دکمه و یا بخشی از فلش می باشد این کار در اکشن اسکریپت ۳ متفاوت از اکشن اسکریپت ۲ می باشد در نسخه جدید از فرمان navigateToURL() استفاده می شود ، در ادامه استفاده از آن را توضیح خواهیم داد&#8230; [...]]]></description>
			<content:encoded><![CDATA[<p style="text-align: center;">
<p style="text-align: right;">یکی از مواردی که به احتمال زیاد هر فردی نیاز خواهد داشت افزودن لینک  به دکمه و یا بخشی از فلش می باشد این کار در اکشن اسکریپت ۳  متفاوت از  اکشن اسکریپت ۲ می باشد در نسخه جدید از فرمان navigateToURL() استفاده می  شود ، در ادامه استفاده از آن را توضیح خواهیم داد&#8230;</p>
<p><strong>ساختار کلی  :</strong></p>
<pre class="brush: as3;">
navigateToURL(myURL,  window);
</pre>
<p><strong>myURL :</strong> آدرس صفحه شما  می باشد که البته می بایست توسط کلاس URLRequest تعریف شده باشد.<br />
<strong>window   :</strong> نوع باز شدن لینک را مشخص می کند (مثلا _blank به صفحه جدید اشاره  می کند.</p>
<p><strong>در ادامه  به مثالی ساده در این مورد می پردازیم :<br />
<span id="more-190"></span></strong></p>
<pre class="brush: as3;">
var  myURL:URLRequest = new URLRequest(&quot;http:///www.iflashlord.com/&quot;);
navigateToURL(myURL,  &quot;_blank&quot;);
</pre>
<p>در کد بالا ابتدا myURL را از  نوع URLRequest تعریف می کنیم و سپس کلاس URLRequest را ایجاد و مقدار  آدرس صفحه را به عنوان آرگمان آن وارد می کنیم ، تا اینجاد درخواست ایجاد  شد ، این درخواست را به عنوان اولین آرگمان navigateToURL استفاده می کنیم و  دومین آرگمان هم نوع باز شدن که می تواند ، _self , _top , یا نام فریمی  در اچ تی ام ال که می خواهید لینک درون آن فریم فراخوانی شود مقدار دهی  کنید.</p>
<p><strong><!--sizeo:4--><!--/sizeo-->یه مثال کاربردی <!--sizec--><!--/sizec--></strong><br />
برای  شاخت یک مثال کاربردی از ساخت پروژه جدید از نوع AS3 می نماییم ، کلید  میان بر ctrl+n<br />
<img src="http://www.republicofcode.com/tutorials/flash/as3link/new-as3-file.gif" border="0" alt="" width="474" height="80" /></p>
<p>و سپس از مسیر Window&gt;Component پنل کامپوننت را  انتخاب کنید و سپس بخش User Interface را باز نمایید و بعد Button را با  موس گرفته و بر روی صفحه بکشید و سپس آن را انتخاب کرده و سپس از مسیر  Windows&gt;Components Inspector مقدار Open Link را برای Label وارد  نمایید.</p>
<p><img id="--ipb-img-resizer-4" src="http://www.republicofcode.com/tutorials/flash/as3link/button-on-stage.gif" border="0" alt="" width="449" height="280" /><br />
سپس دکمه را انتخاب و پنل Properties را باز  نمایید و instance name را با مقدار my_btn پر نمایید ، با مقدار دهی به  instance names به راحتی متوانید به دکمه ایجاد شده رجوع نمایید.</p>
<p><img src="http://www.republicofcode.com/tutorials/flash/as3link/instance-name.gif" border="0" alt="" /></p>
<p>حال برای نوشتن کد آماده می شویم فریم اول را انتخاب و  راست کلیک نمایید و Actions را انتخاب نمایید ، پنل اکشن باز می شود.</p>
<p>برای  رویداد دکمه ایجاد شده در زمان کلیک می بایست از MouseEvent.CLICK استفاده  کنید و یک تابع را توسط آن فرخوانی کنید در این مثال onClick</p>
<p><strong>کد  مورد نظر : </strong></p>
<pre class="brush: as3;">
my_btn.addEventListener(MouseEvent.CLICK,  onClick);
function onClick(e:MouseEvent):void{}
</pre>
<p>و حال درون تابع ایجاد شده از کد navigateToURL استفاده می  کنیم و کد نهایی را به صورت زیر می نویسیم :</p>
<pre class="brush: as3;">
my_btn.addEventListener(MouseEvent.CLICK,  onClick);
function onClick(e:MouseEvent):void{
navigateToURL(new  URLRequest(&quot;http:///www.iflashlord.com/&quot;), &quot;_blank&quot;);
}
</pre>
<p>حالا  می تونید به راحتی با کلیدهای Ctrl+Enter فایل رو تست نمایید.</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.iflashlord.com/1388/11/navigatetourl-%d8%af%d8%b1-%d8%a7%da%a9%d8%b4%d9%86-%d8%a7%d8%b3%da%a9%d8%b1%db%8c%d9%be%d8%aa-3/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>حذف فاصله های موجود در یک نوشته توسط اکشن اسکریپت ۳</title>
		<link>http://blog.iflashlord.com/1388/11/%d8%ad%d8%b0%d9%81-%d9%81%d8%a7%d8%b5%d9%84%d9%87-%d9%87%d8%a7%db%8c-%d9%85%d9%88%d8%ac%d9%88%d8%af-%d8%af%d8%b1-%db%8c%da%a9-%d9%86%d9%88%d8%b4%d8%aa%d9%87-%d8%aa%d9%88%d8%b3%d8%b7-%d8%a7%da%a9%d8%b4/</link>
		<comments>http://blog.iflashlord.com/1388/11/%d8%ad%d8%b0%d9%81-%d9%81%d8%a7%d8%b5%d9%84%d9%87-%d9%87%d8%a7%db%8c-%d9%85%d9%88%d8%ac%d9%88%d8%af-%d8%af%d8%b1-%db%8c%da%a9-%d9%86%d9%88%d8%b4%d8%aa%d9%87-%d8%aa%d9%88%d8%b3%d8%b7-%d8%a7%da%a9%d8%b4/#comments</comments>
		<pubDate>Sun, 07 Feb 2010 22:48:41 +0000</pubDate>
		<dc:creator>بهروز پولادرگ</dc:creator>
				<category><![CDATA[ادوبی فلش]]></category>
		<category><![CDATA[اکشن اسکریپت]]></category>
		<category><![CDATA[برنامه نویسی]]></category>
		<category><![CDATA[AS3]]></category>
		<category><![CDATA[RegEx]]></category>
		<category><![CDATA[replace]]></category>
		<category><![CDATA[String]]></category>
		<category><![CDATA[اکشن اسکریپت 3]]></category>

		<guid isPermaLink="false">http://blog.iflashlord.com/?p=160</guid>
		<description><![CDATA[برای حذف فاصله های موجود در یک نوشته توسط اکشن اسکریپت ۳ یکی از بهترین راه ها استفاده از عبارات با قائده می باشد ، در زیر با استفاده از متد replace که برای String ها در AS3 وجود دارد و با استفاده از RegEx و جا به جایی فاصله های با مقدار خالی &#8220;&#8221; [...]]]></description>
			<content:encoded><![CDATA[<p style="text-align: right;">برای حذف فاصله های موجود در یک نوشته توسط اکشن اسکریپت ۳  یکی از بهترین راه ها استفاده از عبارات با قائده می باشد ، در زیر با استفاده از متد replace که برای String ها در AS3 وجود دارد و با استفاده از RegEx و جا به جایی فاصله های با مقدار خالی &#8220;&#8221; تمامی فاصله های موجود در String خودمون رو حذف می کنیم  ، در زیر به کد مثال برای این موضوع دقت نمایید :</p>
<pre class="brush: as3; highlight: [3];">
var oldString = &quot; iflash lord &quot;;
trace(oldString); //retrun  iflash lord
var newString:String = String(oldString.replace( /\s/g, &quot;&quot; ));
trace(newString); //return iflashlord (بدون هیچ فاصله ای)
</pre>
]]></content:encoded>
			<wfw:commentRss>http://blog.iflashlord.com/1388/11/%d8%ad%d8%b0%d9%81-%d9%81%d8%a7%d8%b5%d9%84%d9%87-%d9%87%d8%a7%db%8c-%d9%85%d9%88%d8%ac%d9%88%d8%af-%d8%af%d8%b1-%db%8c%da%a9-%d9%86%d9%88%d8%b4%d8%aa%d9%87-%d8%aa%d9%88%d8%b3%d8%b7-%d8%a7%da%a9%d8%b4/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>معکوس کردن یک رشته متنی در AS3</title>
		<link>http://blog.iflashlord.com/1388/11/%d9%85%d8%b9%da%a9%d9%88%d8%b3-%da%a9%d8%b1%d8%af%d9%86-%db%8c%da%a9-%d8%b1%d8%b4%d8%aa%d9%87-%d9%85%d8%aa%d9%86%db%8c-%d8%af%d8%b1-as3/</link>
		<comments>http://blog.iflashlord.com/1388/11/%d9%85%d8%b9%da%a9%d9%88%d8%b3-%da%a9%d8%b1%d8%af%d9%86-%db%8c%da%a9-%d8%b1%d8%b4%d8%aa%d9%87-%d9%85%d8%aa%d9%86%db%8c-%d8%af%d8%b1-as3/#comments</comments>
		<pubDate>Sat, 06 Feb 2010 04:56:00 +0000</pubDate>
		<dc:creator>بهروز پولادرگ</dc:creator>
				<category><![CDATA[اکشن اسکریپت]]></category>
		<category><![CDATA[برنامه نویسی]]></category>
		<category><![CDATA[Array]]></category>
		<category><![CDATA[AS3]]></category>
		<category><![CDATA[join]]></category>
		<category><![CDATA[reverse]]></category>
		<category><![CDATA[reverseString]]></category>
		<category><![CDATA[split]]></category>
		<category><![CDATA[معکوس]]></category>

		<guid isPermaLink="false">http://blog.iflashlord.com/?p=144</guid>
		<description><![CDATA[برای معکوس کردن یک رشته متنی راه های مختلفی وجود دارد در زیر سعی کردیم به چند راه بپردازیم ، اگر رهی هم اکنون به ذهن شما رسید می توانید آن را در اینجا با دوستانتان به اشتراک بگزارید. راه اول function reverseString(tString:String):String { var tmp_array:Array=tString.split(&#34;&#34;); tmp_array.reverse(); var tmpString:String=tmp_array.join(&#34;&#34;); return tmpString; } در این روش [...]]]></description>
			<content:encoded><![CDATA[<p style="text-align: center;">
<p>برای معکوس کردن یک رشته متنی راه های مختلفی وجود دارد در زیر سعی کردیم به چند راه بپردازیم ، اگر رهی هم اکنون به ذهن شما رسید می توانید آن را در اینجا با دوستانتان به اشتراک بگزارید.</p>
<p>راه اول</p>
<pre class="brush: as3;">

function reverseString(tString:String):String {
var tmp_array:Array=tString.split(&quot;&quot;);
tmp_array.reverse();
var tmpString:String=tmp_array.join(&quot;&quot;);
return tmpString;
}
</pre>
<p>در این روش ابتدا توسط متد split مربوط به String متن دریافتی تابع را به  صورت حرف حرف جدا می کنیم برای این که جدا سازی به صورت حرف حرف اعمال شود  می بایست مقدار &#8220;&#8221; را که آرگمان ورودی split می باشد ، استفاده کنیم. این  آرگمان نوع شکستن متن را بر مبنای خاص مشخص می کند مثلا برای جدا سازی کلمه  های یک متن می توانید از &#8221; &#8221; (با مقدار یک Space) استفاده نمایید. ( خروجی  به صورت آرایه می باشد)<br />
<span id="more-144"></span><br />
در این مرحله از متد reverse مربوط به  آرایه های که به صورت معکوس مرتب سازی را انجام می دهد استفاده می کنیم.با  این کار اندیس یا (index) های آرایه معکوس می شود.</p>
<p>در مرحله بعد  آرایه را با کمک متد join (آرایه ها) به یک دیگر متصل می کنیم و در نهایت  مقدار متنی را return می کنیم</p>
<p>راه دوم</p>
<pre class="brush: as3;">

function reverseString(tString:String):String {
return tString.split(&quot;&quot;).reverse().join(&quot;&quot;);
}
</pre>
<p>عملا در این دو راه یک کار انجام می شود که ابتدا توسطsplit  به صورت حرف حرف جداسازی و در آرایه قرار می گیرید و توسط reverse معکوش شده و توسط join به هم پیوسته می شود و نتیجه نهای به عنوان خروجی تابع return  می شود.</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.iflashlord.com/1388/11/%d9%85%d8%b9%da%a9%d9%88%d8%b3-%da%a9%d8%b1%d8%af%d9%86-%db%8c%da%a9-%d8%b1%d8%b4%d8%aa%d9%87-%d9%85%d8%aa%d9%86%db%8c-%d8%af%d8%b1-as3/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>
