<?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>Wed, 11 Jan 2012 12:09:13 +0000</lastBuildDate>
	<language>fa</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
			<item>
		<title>طراحی خطوط با موس در اکشن اسکریپت ۳</title>
		<link>http://blog.iflashlord.com/1390/10/%d8%b7%d8%b1%d8%a7%d8%ad%db%8c-%d8%ae%d8%b7%d9%88%d8%b7-%d8%a8%d8%a7-%d9%85%d9%88%d8%b3-%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/1390/10/%d8%b7%d8%b1%d8%a7%d8%ad%db%8c-%d8%ae%d8%b7%d9%88%d8%b7-%d8%a8%d8%a7-%d9%85%d9%88%d8%b3-%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>Mon, 09 Jan 2012 23:15:08 +0000</pubDate>
		<dc:creator>بهروز پولادرگ</dc:creator>
				<category><![CDATA[ادوبی ایر]]></category>
		<category><![CDATA[ادوبی فلش]]></category>
		<category><![CDATA[اکشن اسکریپت]]></category>
		<category><![CDATA[برنامه نویسی]]></category>
		<category><![CDATA[addChild]]></category>
		<category><![CDATA[addEventListener]]></category>
		<category><![CDATA[AS3]]></category>
		<category><![CDATA[beginFill]]></category>
		<category><![CDATA[DisplayObject]]></category>
		<category><![CDATA[draw]]></category>
		<category><![CDATA[drawRect]]></category>
		<category><![CDATA[Flash]]></category>
		<category><![CDATA[graphics]]></category>
		<category><![CDATA[lineStyle]]></category>
		<category><![CDATA[mouse]]></category>
		<category><![CDATA[MouseEvent]]></category>
		<category><![CDATA[MOUSE_DOWN]]></category>
		<category><![CDATA[MOUSE_MOVE]]></category>
		<category><![CDATA[MOUSE_UP]]></category>
		<category><![CDATA[moveTo]]></category>
		<category><![CDATA[removeEventListener]]></category>
		<category><![CDATA[Sprite]]></category>
		<category><![CDATA[stage]]></category>
		<category><![CDATA[stageHeight]]></category>
		<category><![CDATA[stageWidth]]></category>
		<category><![CDATA[اکشن اسکریپت 3]]></category>
		<category><![CDATA[رویداد]]></category>
		<category><![CDATA[طراحی]]></category>
		<category><![CDATA[طراحی خط با موس]]></category>
		<category><![CDATA[فلش]]></category>
		<category><![CDATA[موس]]></category>
		<category><![CDATA[نقاشی]]></category>
		<category><![CDATA[کشیدن خط]]></category>
		<category><![CDATA[کشیدن خطوط]]></category>

		<guid isPermaLink="false">http://blog.iflashlord.com/?p=1830</guid>
		<description><![CDATA[در این مطلب به یک برنامه ساده در فلش می پردازیم که به راحتی با موس بتوانید خطوط مورد نظرتان را طراحی نمایید ، این مطلب به انجام این کار با استفاده از فلش و اکشن اسکریپت ۳ می پردازیم. دانلود سورس : draw_line_with_mouse_iflashlord.zip در ابتدا کلاس های مورد نیاز را وارد می کنیم (البته [...]]]></description>
			<content:encoded><![CDATA[<p style="font-family: Tahoma,Verdana,sans-serif; direction: rtl;" align="right">
	<img src="http://blog.iflashlord.com/wp-content/uploads/2012/01/draw_line_with_mouse_iflashlord.jpg" alt="iflashlord.com" />
	</p><p style="font-family: Tahoma,Verdana,sans-serif; direction: rtl;" align="right">در این مطلب به یک برنامه ساده در فلش می پردازیم که به راحتی با موس بتوانید خطوط مورد نظرتان را طراحی نمایید ، این مطلب به انجام این کار با استفاده از فلش و اکشن اسکریپت ۳ می پردازیم.</p>
<p style="font-family: Tahoma,Verdana,sans-serif; direction: rtl;" align="right"><span id="more-1830"></span></p>
<blockquote><p style="font-family: Tahoma,Verdana,sans-serif; direction: rtl;" align="right">دانلود سورس : <a href="http://blog.iflashlord.com/wp-content/uploads/2012/01/draw_line_with_mouse_iflashlord.zip" target="_blank">draw_line_with_mouse_iflashlord.zip</a></p></blockquote>
<p style="font-family: Tahoma,Verdana,sans-serif; direction: rtl;" align="right">در ابتدا کلاس های مورد نیاز را وارد می کنیم (البته توجه داشته باشید این کار به صورت خودکار توسط نسخه های جدید فلش انجام می شود و دلیل ذکر این موارد برای اشاره به کلاس های مورد استفاده در مطلب آموزشی می باشد) </p>
<pre class="brush: as3; title: ; notranslate">
import flash.display.Sprite;
import flash.display.Stage;
import flash.events.MouseEvent;
import flash.display.Graphics;
</pre>
<p style="font-family: Tahoma,Verdana,sans-serif; direction: rtl;" align="right">در مرحله بعد یک Sprite ایجاد می کنیم ، این DisplayObject مخزنی برای ذخیره محتوا طراحی شده توسط موس می باشد.</p>
<pre class="brush: as3; title: ; notranslate">
var _sprite:Sprite= new Sprite();
</pre>
<p style="font-family: Tahoma,Verdana,sans-serif; direction: rtl;" align="right">حال این Sprite را addChild می کنیم و در ابتدا محیطی که می خواهیم در آن طراحی انجام شود را ایجاد می کنیم برای این کار از drawRect برای طراحی یک مستطیل استفاده می کنیم.</p>
<pre class="brush: as3; title: ; notranslate">
_sprite.graphics.beginFill(0xF0F0F0);
_sprite.graphics.drawRect(0, 0, stage.stageWidth, stage.stageHeight);
_sprite.graphics.endFill();
</pre>
<p style="font-family: Tahoma,Verdana,sans-serif; direction: rtl;" align="right">برای این که این بخش مشخص باشد ما رنگ F0F0F0 را قرار دادیم شما می توانید هر کد رنگی که مورد نظرتان باشد را وارد نمایید. و در این مثال برای به دست آوردن طول و عرض صفحه استیج از stage.stageHeight و  stage.stageWidth استفاده شده است و برای مختصات شروع ایجاد طرح از ۰ و ۰ که مختصات x و y نقطه شروع می باشد استفاده شده است.<br />
در ضمن endFill برای پایان دادن به یک مقدار دهی مثلا رنگ به شی مستطیل تعریف شده ما می باشد.</p>
<p style="font-family: Tahoma,Verdana,sans-serif; direction: rtl;" align="right">حال می بایست رویدادهای مربوطه به فشردن کلیک چپ موس (MOUSE_DOWN) و رها کردن آن را (MOUSE_UP) تعریف می کنیم و به Sprite تعریف شده اعمال می کنیم.</p>
<pre class="brush: as3; title: ; notranslate">
_sprite.addEventListener(MouseEvent.MOUSE_DOWN, MouseDown);
_sprite.addEventListener(MouseEvent.MOUSE_UP, MouseUp);
</pre>
<p style="font-family: Tahoma,Verdana,sans-serif; direction: rtl;" align="right">حال تابع مربوطه به فشرده شدن موس را تعریف می کنیم در این تابع ما توسط متد lineStyle از graphics مربوطه به شی نمایشی Sprite ابتدا قالب بندی خط را تعیین می کنیم ، و توسط متد moveTo مختصات اولیه را مختصات کنونی موس قرار می دهیم .<br />
حال زمان آن رسیده که رویدادی جدید تعریف کنیم تا در زمان حرکت موس تابع MouseMove را فراخوانی کند ، این تابع وظیفه کشیدن خط را بر عهده دارد.</p>
<pre class="brush: as3; title: ; notranslate">
function MouseDown(e:MouseEvent):void
{
_sprite.graphics.lineStyle(1, 0, 1);
_sprite.graphics.moveTo(mouseX, mouseY);
_sprite.addEventListener(MouseEvent.MOUSE_MOVE, MouseMove);
}
</pre>
<p style="font-family: Tahoma,Verdana,sans-serif; direction: rtl;" align="right">تابع MouseMove با استفاده از متد lineTo در هر زمان که موس حرکت کند خطی به نقطه مختصات کنونی موس طراحی می کند. آرگمان اول lineTo مربوطه به مختصات x و آرگمان دوم مربوطه به مختصات y می باشد که در این مثال برای مقدار x از mouseX و y از mouseY که مقدارهای مربوطه به مختصات کنونی موس می باشند استفاده شده است .</p>
<pre class="brush: as3; title: ; notranslate">
function MouseMove(e:MouseEvent):void
{
_sprite.graphics.lineTo(mouseX, mouseY);
}
</pre>
<p style="font-family: Tahoma,Verdana,sans-serif; direction: rtl;" align="right">حال می بایست توسط رویدادی که برای رها کردن کلیک تعیین کردیم در زمان رها کردن کلیک رویداد مربوطه به طراحی در حال حرکت موس و در واقع فراخوانی MouseMove را حذف کنیم.</p>
<pre class="brush: as3; title: ; notranslate">
function MouseUp(e:MouseEvent):void
{
_sprite.removeEventListener(MouseEvent.MOUSE_MOVE, MouseMove);
}
</pre>
<p style="font-family: Tahoma,Verdana,sans-serif; direction: rtl;" align="right"><strong>سورس کد کامل برنامه به صورت یکجا :</strong></p>
<pre class="brush: as3; title: ; notranslate">
import flash.display.Sprite;
import flash.display.Stage;
import flash.events.MouseEvent;
import flash.display.Graphics;

var _sprite:Sprite= new Sprite();
addChild(_sprite);
_sprite.graphics.beginFill(0xF0F0F0);
_sprite.graphics.drawRect(0, 0, stage.stageWidth, stage.stageHeight);
_sprite.graphics.endFill();

_sprite.addEventListener(MouseEvent.MOUSE_DOWN, MouseDown);
_sprite.addEventListener(MouseEvent.MOUSE_UP, MouseUp);

function MouseDown(e:MouseEvent):void
{
	_sprite.graphics.lineStyle(1, 0, 1);
	_sprite.graphics.moveTo(mouseX, mouseY);
	_sprite.addEventListener(MouseEvent.MOUSE_MOVE, MouseMove);
}

function MouseUp(e:MouseEvent):void
{
	_sprite.removeEventListener(MouseEvent.MOUSE_MOVE, MouseMove);
}
function MouseMove(e:MouseEvent):void
{
	_sprite.graphics.lineTo(mouseX, mouseY);
}
</pre>
</pre>
<p style="font-family: Tahoma,Verdana,sans-serif; direction: rtl;" align="right"><strong>و بهتر است کمی کدمان را (از نظر رویدادها) بهینه تر نیز کنیم :</strong></p>
<pre class="brush: as3; highlight: [12,13,19]; title: ; notranslate">
import flash.display.Sprite;
import flash.display.Stage;
import flash.events.MouseEvent;
import flash.display.Graphics;

var _sprite:Sprite= new Sprite();
addChild(_sprite);
_sprite.graphics.beginFill(0xF0F0F0);
_sprite.graphics.drawRect(0, 0, stage.stageWidth, stage.stageHeight);
_sprite.graphics.endFill();

_sprite.addEventListener(MouseEvent.MOUSE_DOWN, MouseDown , false , 0 , true);
_sprite.addEventListener(MouseEvent.MOUSE_UP, MouseUp , false , 0 , true);

function MouseDown(e:MouseEvent):void
{
	_sprite.graphics.lineStyle(1, 0, 1);
	_sprite.graphics.moveTo(mouseX, mouseY);
	_sprite.addEventListener(MouseEvent.MOUSE_MOVE, MouseMove , false , 0 , true);
}

function MouseUp(e:MouseEvent):void
{
	_sprite.removeEventListener(MouseEvent.MOUSE_MOVE, MouseMove);
}
function MouseMove(e:MouseEvent):void
{
	_sprite.graphics.lineTo(mouseX, mouseY);
}
</pre>
<p style="font-family: Tahoma,Verdana,sans-serif; direction: rtl;" align="right">حال می تونیم برنامه رو تست کنیم ، با فشردن کلیک چپ و حرکت موس می توانید خطوط مورد نظر خودتان را طراحی کنید.</p>
<blockquote><p style="font-family: Tahoma,Verdana,sans-serif; direction: rtl;" align="right">دانلود سورس : <a href="http://blog.iflashlord.com/wp-content/uploads/2012/01/draw_line_with_mouse_iflashlord.zip" target="_blank">draw_line_with_mouse_iflashlord.zip</a></p></blockquote>
]]></content:encoded>
			<wfw:commentRss>http://blog.iflashlord.com/1390/10/%d8%b7%d8%b1%d8%a7%d8%ad%db%8c-%d8%ae%d8%b7%d9%88%d8%b7-%d8%a8%d8%a7-%d9%85%d9%88%d8%b3-%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>13</slash:comments>
		</item>
		<item>
		<title>۱۲ مطلب منتخب پادشاه فلش ، هدیه سال جدید میلادی!</title>
		<link>http://blog.iflashlord.com/1390/10/%d8%af%d9%88%d8%a7%d8%b2%d8%af%d9%87-%d9%85%d8%b7%d9%84%d8%a8-%d9%85%d9%86%d8%aa%d8%ae%d8%a8-%d9%be%d8%a7%d8%af%d8%b4%d8%a7%d9%87-%d9%81%d9%84%d8%b4/</link>
		<comments>http://blog.iflashlord.com/1390/10/%d8%af%d9%88%d8%a7%d8%b2%d8%af%d9%87-%d9%85%d8%b7%d9%84%d8%a8-%d9%85%d9%86%d8%aa%d8%ae%d8%a8-%d9%be%d8%a7%d8%af%d8%b4%d8%a7%d9%87-%d9%81%d9%84%d8%b4/#comments</comments>
		<pubDate>Sun, 01 Jan 2012 11:51:21 +0000</pubDate>
		<dc:creator>بهروز پولادرگ</dc:creator>
				<category><![CDATA[ادوبی ایر]]></category>
		<category><![CDATA[ادوبی فلش]]></category>
		<category><![CDATA[اس کیو ال لایت]]></category>
		<category><![CDATA[امنیت و هک]]></category>
		<category><![CDATA[اکشن اسکریپت]]></category>
		<category><![CDATA[برنامه نویسی]]></category>
		<category><![CDATA[جاوا اسکریپت]]></category>
		<category><![CDATA[12 مطلب منتخب]]></category>
		<category><![CDATA[ایجاد دسترسی به stage و root در کلاس ها]]></category>
		<category><![CDATA[ایجاد چرخش افقی اشیاء با استفاده از کلاس Matrix]]></category>
		<category><![CDATA[بارگزاری اطلاعات XML توسط اکشن اسکریپت ۳]]></category>
		<category><![CDATA[بهینه سازی فلش – انجماد اشیاء]]></category>
		<category><![CDATA[بهینه سازی فلش – فعال سازی و غیر فعال سازی رویدادها]]></category>
		<category><![CDATA[تعیین امنیت رمز عبور در اکشن اسکریپت ۳]]></category>
		<category><![CDATA[تمام صفحه در اکشن اسکریپت ۳]]></category>
		<category><![CDATA[جستجوی به ترتیب یک لغت در فیلد متنی]]></category>
		<category><![CDATA[ذخیره محتویات MovieClip به صورت عکس]]></category>
		<category><![CDATA[ذخیره کردن XML به صورت Binary در اکشن اسکریپت ۳]]></category>
		<category><![CDATA[سال 2012]]></category>
		<category><![CDATA[سال جدید میلادی]]></category>
		<category><![CDATA[ویدئوی آموزشی کار با فلش بنر آنلاین]]></category>
		<category><![CDATA[پرینت گرفتن از یک MovieClip]]></category>

		<guid isPermaLink="false">http://blog.iflashlord.com/?p=1816</guid>
		<description><![CDATA[در ابتدا سال جدید میلادی ۲۰۱۲ تصمیم گرفتم که ۱۲ مطلب منتخب سایت را به عنوان هدیه سال نو میلادی و ولادت امام موسی کاظم علیه السلام ، معرفی و تقدیم دوستان نمایم. با آرزوی داشتن زندگی سرشار از شادی ، سلامتی و البته خلاقیت برای شما دوست عزیز. ویدئوی آموزشی کار با فلش بنر [...]]]></description>
			<content:encoded><![CDATA[<p style="font-family: Tahoma,Verdana,sans-serif; direction: rtl;" align="right">
	<img src="http://blog.iflashlord.com/wp-content/uploads/2012/01/2012_top_12.jpg" alt="iflashlord.com" />
	</p><p style="font-family: Tahoma,Verdana,sans-serif; direction: rtl;" align="right">در ابتدا سال جدید میلادی ۲۰۱۲ تصمیم گرفتم که ۱۲ مطلب منتخب سایت را به عنوان هدیه سال نو میلادی و ولادت امام موسی کاظم علیه السلام ، معرفی و تقدیم دوستان نمایم.<br />
با آرزوی داشتن زندگی سرشار از شادی ، سلامتی و البته خلاقیت برای شما دوست عزیز.</p>
<p style="font-family: Tahoma,Verdana,sans-serif; direction: rtl;" align="right"><span id="more-1816"></span></p>
<h3><a href="http://blog.iflashlord.com/1390/03/%d9%88%db%8c%d8%af%d8%a6%d9%88%db%8c-%d8%a2%d9%85%d9%88%d8%b2%d8%b4%db%8c-%da%a9%d8%a7%d8%b1-%d8%a8%d8%a7-%d9%81%d9%84%d8%b4-%d8%a8%d9%86%d8%b1-%d8%a2%d9%86%d9%84%d8%a7%db%8c%d9%86/" target="_blank"><img src="http://blog.iflashlord.com/wp-content/plugins/best-related-posts/resizer.php?src=/wp-content/uploads/2011/06/flashbanneronline_video_iflashlord.jpg&amp;w=460&amp;h=160&amp;zc=2&amp;q=100" alt="" /></a></h3>
<h3><a title="به پیوند دائمی ویدئوی آموزشی کار با فلش بنر آنلاین" href="http://blog.iflashlord.com/1390/03/%d9%88%db%8c%d8%af%d8%a6%d9%88%db%8c-%d8%a2%d9%85%d9%88%d8%b2%d8%b4%db%8c-%da%a9%d8%a7%d8%b1-%d8%a8%d8%a7-%d9%81%d9%84%d8%b4-%d8%a8%d9%86%d8%b1-%d8%a2%d9%86%d9%84%d8%a7%db%8c%d9%86/" rel="bookmark">ویدئوی آموزشی کار با فلش بنر آنلاین</a></h3>
<hr />
<h3><a href="http://blog.iflashlord.com/1389/11/%d8%aa%d8%b9%db%8c%db%8c%d9%86-%d8%a7%d9%85%d9%86%db%8c%d8%aa-%d8%b1%d9%85%d8%b2-%d8%b9%d8%a8%d9%88%d8%b1-%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/" target="_blank"><img src="http://blog.iflashlord.com/wp-content/plugins/best-related-posts/resizer.php?src=/wp-content/uploads/2011/02/strength_password_iflashlord.jpg&amp;w=460&amp;h=160&amp;zc=2&amp;q=100" alt="" /></a></h3>
<h3><a title="به پیوند دائمی تعیین امنیت رمز عبور در اکشن اسکریپت ۳" href="http://blog.iflashlord.com/1389/11/%d8%aa%d8%b9%db%8c%db%8c%d9%86-%d8%a7%d9%85%d9%86%db%8c%d8%aa-%d8%b1%d9%85%d8%b2-%d8%b9%d8%a8%d9%88%d8%b1-%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/" rel="bookmark">تعیین امنیت رمز عبور در اکشن اسکریپت ۳</a></h3>
<hr />
<h3><a href="http://blog.iflashlord.com/1389/11/%d8%b0%d8%ae%db%8c%d8%b1%d9%87-%da%a9%d8%b1%d8%af%d9%86-xml-%d8%a8%d9%87-%d8%b5%d9%88%d8%b1%d8%aa-binary/" target="_blank"><img src="http://blog.iflashlord.com/wp-content/plugins/best-related-posts/resizer.php?src=/wp-content/uploads/2011/01/xml2binary_iflashlord.jpg&amp;w=460&amp;h=160&amp;zc=2&amp;q=100" alt="" /></a></h3>
<h3><a title="به پیوند دائمی ذخیره کردن XML به صورت Binary" href="http://blog.iflashlord.com/1389/11/%d8%b0%d8%ae%db%8c%d8%b1%d9%87-%da%a9%d8%b1%d8%af%d9%86-xml-%d8%a8%d9%87-%d8%b5%d9%88%d8%b1%d8%aa-binary/" rel="bookmark">ذخیره کردن XML به صورت Binary در اکشن اسکریپت ۳</a></h3>
<hr />
<h3><a href="http://blog.iflashlord.com/1389/09/%d8%a8%d8%a7%d8%b1%da%af%d8%b2%d8%a7%d8%b1%db%8c-%d8%a7%d8%b7%d9%84%d8%a7%d8%b9%d8%a7%d8%aa-xml-%d8%aa%d9%88%d8%b3%d8%b7-%d8%a7%da%a9%d8%b4%d9%86-%d8%a7%d8%b3%da%a9%d8%b1%db%8c%d9%be%d8%aa-3/" target="_blank"><img src="http://blog.iflashlord.com/wp-content/plugins/best-related-posts/resizer.php?src=/wp-content/uploads/2010/11/as3_with_xml_iflashlord.jpg&amp;w=460&amp;h=160&amp;zc=2&amp;q=100" alt="" /></a></h3>
<h3><a title="پیوند دائمی به بارگزاری اطلاعات XML توسط اکشن اسکریپت ۳" href="http://blog.iflashlord.com/1389/09/%d8%a8%d8%a7%d8%b1%da%af%d8%b2%d8%a7%d8%b1%db%8c-%d8%a7%d8%b7%d9%84%d8%a7%d8%b9%d8%a7%d8%aa-xml-%d8%aa%d9%88%d8%b3%d8%b7-%d8%a7%da%a9%d8%b4%d9%86-%d8%a7%d8%b3%da%a9%d8%b1%db%8c%d9%be%d8%aa-3/" rel="bookmark">بارگزاری اطلاعات XML توسط اکشن اسکریپت ۳</a></h3>
<hr />
<h3><a href="http://blog.iflashlord.com/1390/02/%d8%a8%d9%87%db%8c%d9%86%d9%87-%d8%b3%d8%a7%d8%b2%db%8c-%d9%81%d9%84%d8%b4-%d9%81%d8%b9%d8%a7%d9%84-%d8%b3%d8%a7%d8%b2%db%8c-%d9%88-%d8%ba%db%8c%d8%b1-%d9%81%d8%b9%d8%a7%d9%84-%d8%b3%d8%a7%d8%b2/" target="_blank"><img src="http://blog.iflashlord.com/wp-content/plugins/best-related-posts/resizer.php?src=/wp-content/uploads/2011/04/optimaize_flash_iflashlord.jpg&amp;w=460&amp;h=160&amp;zc=2&amp;q=100" alt="" /></a></h3>
<h3><a title="به پیوند دائمی بهینه سازی فلش – فعال سازی و غیر فعال سازی رویدادها" href="http://blog.iflashlord.com/1390/02/%d8%a8%d9%87%db%8c%d9%86%d9%87-%d8%b3%d8%a7%d8%b2%db%8c-%d9%81%d9%84%d8%b4-%d9%81%d8%b9%d8%a7%d9%84-%d8%b3%d8%a7%d8%b2%db%8c-%d9%88-%d8%ba%db%8c%d8%b1-%d9%81%d8%b9%d8%a7%d9%84-%d8%b3%d8%a7%d8%b2/" rel="bookmark">بهینه سازی فلش – فعال سازی و غیر فعال سازی رویدادها</a></h3>
<hr />
<h3><a href="http://blog.iflashlord.com/1390/08/%d8%b0%d8%ae%db%8c%d8%b1%d9%87-%d9%85%d8%ad%d8%aa%d9%88%db%8c%d8%a7%d8%aa-movieclip-%d8%a8%d9%87-%d8%b5%d9%88%d8%b1%d8%aa-%d8%b9%da%a9%d8%b3/" target="_blank"><img src="http://blog.iflashlord.com/wp-content/plugins/best-related-posts/resizer.php?src=/wp-content/uploads/2011/10/movieclip_to_jpeg_iflashlord.jpg&amp;w=460&amp;h=160&amp;zc=2&amp;q=100" alt="" /></a></h3>
<h3><a title="به پیوند دائمی ذخیره محتویات MovieClip به صورت عکس" href="http://blog.iflashlord.com/1390/08/%d8%b0%d8%ae%db%8c%d8%b1%d9%87-%d9%85%d8%ad%d8%aa%d9%88%db%8c%d8%a7%d8%aa-movieclip-%d8%a8%d9%87-%d8%b5%d9%88%d8%b1%d8%aa-%d8%b9%da%a9%d8%b3/" rel="bookmark">ذخیره محتویات MovieClip به صورت عکس</a></h3>
<hr />
<h3><a href="http://blog.iflashlord.com/1390/08/%d8%a7%db%8c%d8%ac%d8%a7%d8%af-%da%86%d8%b1%d8%ae%d8%b4-%d8%a7%d9%81%d9%82%db%8c-%d8%a8%d8%a7-%d8%a7%d8%b3%d8%aa%d9%81%d8%a7%d8%af%d9%87-%d8%a7%d8%b2-matrix/" target="_blank"><img src="http://blog.iflashlord.com/wp-content/plugins/best-related-posts/resizer.php?src=/wp-content/uploads/2011/11/matrix_flip_h_as3_iflashlord.jpg&amp;w=460&amp;h=160&amp;zc=2&amp;q=100" alt="" /></a></h3>
<h3><a title="به پیوند دائمی ایجاد چرخش افقی اشیاء با استفاده از کلاس Matrix" href="http://blog.iflashlord.com/1390/08/%d8%a7%db%8c%d8%ac%d8%a7%d8%af-%da%86%d8%b1%d8%ae%d8%b4-%d8%a7%d9%81%d9%82%db%8c-%d8%a8%d8%a7-%d8%a7%d8%b3%d8%aa%d9%81%d8%a7%d8%af%d9%87-%d8%a7%d8%b2-matrix/" rel="bookmark">ایجاد چرخش افقی اشیاء با استفاده از کلاس Matrix</a></h3>
<hr />
<h3><a href="http://blog.iflashlord.com/1390/08/%d8%a7%db%8c%d8%ac%d8%a7%d8%af-%d8%af%d8%b3%d8%aa%d8%b1%d8%b3%db%8c-%d8%a8%d9%87-stage-%d9%88-root-%d8%af%d8%b1-%da%a9%d9%84%d8%a7%d8%b3-%d9%87%d8%a7/" target="_blank"><img src="http://blog.iflashlord.com/wp-content/plugins/best-related-posts/resizer.php?src=/wp-content/uploads/2011/11/stage_root_access_as3_iflashlord.jpg&amp;w=460&amp;h=160&amp;zc=2&amp;q=100" alt="" /></a></h3>
<h3><a title="به پیوند دائمی ایجاد دسترسی به stage و root در کلاس ها" href="http://blog.iflashlord.com/1390/08/%d8%a7%db%8c%d8%ac%d8%a7%d8%af-%d8%af%d8%b3%d8%aa%d8%b1%d8%b3%db%8c-%d8%a8%d9%87-stage-%d9%88-root-%d8%af%d8%b1-%da%a9%d9%84%d8%a7%d8%b3-%d9%87%d8%a7/" rel="bookmark">ایجاد دسترسی به stage و root در کلاس ها</a></h3>
<hr />
<h3><a href="http://blog.iflashlord.com/1390/10/%d8%aa%d9%85%d8%a7%d9%85-%d8%b5%d9%81%d8%ad%d9%87-%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/" target="_blank"><img src="http://blog.iflashlord.com/wp-content/plugins/best-related-posts/resizer.php?src=/wp-content/uploads/2011/12/fullscreen_as3_flash_iflashlord.jpg&amp;w=460&amp;h=160&amp;zc=2&amp;q=100" alt="" /></a></h3>
<h3><a title="پیوند دائمی به تمام صفحه در اکشن اسکریپت ۳" href="http://blog.iflashlord.com/1390/10/%d8%aa%d9%85%d8%a7%d9%85-%d8%b5%d9%81%d8%ad%d9%87-%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/" rel="bookmark">تمام صفحه در اکشن اسکریپت ۳</a></h3>
<hr />
<h3><a href="http://blog.iflashlord.com/1390/07/%d9%be%d8%b1%db%8c%d9%86%d8%aa-%da%af%d8%b1%d9%81%d8%aa%d9%86-%d8%a7%d8%b2-%db%8c%da%a9-movieclip/" target="_blank"><img src="http://blog.iflashlord.com/wp-content/plugins/best-related-posts/resizer.php?src=/wp-content/uploads/2011/10/printjob_as3_iflashlord.jpg&amp;w=460&amp;h=160&amp;zc=2&amp;q=100" alt="" /></a></h3>
<h3><a title="به پیوند دائمی پرینت گرفتن از یک MovieClip" href="http://blog.iflashlord.com/1390/07/%d9%be%d8%b1%db%8c%d9%86%d8%aa-%da%af%d8%b1%d9%81%d8%aa%d9%86-%d8%a7%d8%b2-%db%8c%da%a9-movieclip/" rel="bookmark">پرینت گرفتن از یک MovieClip</a></h3>
<hr />
<h3><a href="http://blog.iflashlord.com/1390/05/%d8%a8%d9%87%db%8c%d9%86%d9%87-%d8%b3%d8%a7%d8%b2%db%8c-%d9%81%d9%84%d8%b4-%d8%a7%d9%86%d8%ac%d9%85%d8%a7%d8%af-%d8%a7%d8%b4%db%8c%d8%a7%d8%a1/" target="_blank"><img src="http://blog.iflashlord.com/wp-content/plugins/best-related-posts/resizer.php?src=/wp-content/uploads/2011/04/optimaize_flash_iflashlord.jpg&amp;w=460&amp;h=160&amp;zc=2&amp;q=100" alt="" /></a></h3>
<h3><a title="به پیوند دائمی بهینه سازی فلش – انجماد اشیاء" href="http://blog.iflashlord.com/1390/05/%d8%a8%d9%87%db%8c%d9%86%d9%87-%d8%b3%d8%a7%d8%b2%db%8c-%d9%81%d9%84%d8%b4-%d8%a7%d9%86%d8%ac%d9%85%d8%a7%d8%af-%d8%a7%d8%b4%db%8c%d8%a7%d8%a1/" rel="bookmark">بهینه سازی فلش – انجماد اشیاء</a></h3>
<hr />
<h3><a href="http://blog.iflashlord.com/1390/07/%d8%ac%d8%b3%d8%aa%d8%ac%d9%88%db%8c-%d8%a8%d9%87-%d8%aa%d8%b1%d8%aa%db%8c%d8%a8-%db%8c%da%a9-%d9%84%d8%ba%d8%aa-%d8%af%d8%b1-%d9%81%db%8c%d9%84%d8%af-%d9%85%d8%aa%d9%86%db%8c/" target="_blank"><img src="http://blog.iflashlord.com/wp-content/plugins/best-related-posts/resizer.php?src=/wp-content/uploads/2011/10/search_text_find_next_iflashlord.jpg&amp;w=460&amp;h=160&amp;zc=2&amp;q=100" alt="" /></a></h3>
<h3><a title="به پیوند دائمی جستجوی به ترتیب یک لغت در فیلد متنی" href="http://blog.iflashlord.com/1390/07/%d8%ac%d8%b3%d8%aa%d8%ac%d9%88%db%8c-%d8%a8%d9%87-%d8%aa%d8%b1%d8%aa%db%8c%d8%a8-%db%8c%da%a9-%d9%84%d8%ba%d8%aa-%d8%af%d8%b1-%d9%81%db%8c%d9%84%d8%af-%d9%85%d8%aa%d9%86%db%8c/" rel="bookmark">جستجوی به ترتیب یک لغت در فیلد متنی</a></h3>
<p style="font-family: Tahoma,Verdana,sans-serif; direction: rtl;" align="right">موفق و پیروز باشید</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.iflashlord.com/1390/10/%d8%af%d9%88%d8%a7%d8%b2%d8%af%d9%87-%d9%85%d8%b7%d9%84%d8%a8-%d9%85%d9%86%d8%aa%d8%ae%d8%a8-%d9%be%d8%a7%d8%af%d8%b4%d8%a7%d9%87-%d9%81%d9%84%d8%b4/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>تمام صفحه در اکشن اسکریپت ۳</title>
		<link>http://blog.iflashlord.com/1390/10/%d8%aa%d9%85%d8%a7%d9%85-%d8%b5%d9%81%d8%ad%d9%87-%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/1390/10/%d8%aa%d9%85%d8%a7%d9%85-%d8%b5%d9%81%d8%ad%d9%87-%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, 25 Dec 2011 11:40:58 +0000</pubDate>
		<dc:creator>بهروز پولادرگ</dc:creator>
				<category><![CDATA[ادوبی فلش]]></category>
		<category><![CDATA[اکشن اسکریپت]]></category>
		<category><![CDATA[برنامه نویسی]]></category>
		<category><![CDATA[actionscript3]]></category>
		<category><![CDATA[addEventListener]]></category>
		<category><![CDATA[allowFullScreen]]></category>
		<category><![CDATA[AS3]]></category>
		<category><![CDATA[buttonMode]]></category>
		<category><![CDATA[displayState]]></category>
		<category><![CDATA[Flash]]></category>
		<category><![CDATA[fullScreen]]></category>
		<category><![CDATA[FULL_SCREEN]]></category>
		<category><![CDATA[gotoAndStop]]></category>
		<category><![CDATA[HTML]]></category>
		<category><![CDATA[MouseEvent]]></category>
		<category><![CDATA[MouseEvent.CLICK]]></category>
		<category><![CDATA[MovieClip]]></category>
		<category><![CDATA[NORMAL]]></category>
		<category><![CDATA[stage]]></category>
		<category><![CDATA[stage.displayState]]></category>
		<category><![CDATA[stage.scaleMode]]></category>
		<category><![CDATA[StageDisplayState]]></category>
		<category><![CDATA[StageDisplayState.FULL_SCREEN]]></category>
		<category><![CDATA[StageDisplayState.NORMAL]]></category>
		<category><![CDATA[StageScaleMode]]></category>
		<category><![CDATA[StageScaleMode.NO_SCALE]]></category>
		<category><![CDATA[switchFullScreen]]></category>
		<category><![CDATA[اچ تی ام ال]]></category>
		<category><![CDATA[تمام صفحه]]></category>
		<category><![CDATA[حالت عادی]]></category>
		<category><![CDATA[فعال کردن تمام صفحه]]></category>
		<category><![CDATA[فلش]]></category>
		<category><![CDATA[فول اسکرین]]></category>

		<guid isPermaLink="false">http://blog.iflashlord.com/?p=1780</guid>
		<description><![CDATA[در این مطلب به تمام صفحه کردن یا همان fullscreen کردن در اکشن اسکریپت ۳ می پردازیم و دکمه ای را ایجاد می کنیم که با کلیک بر روی آن فلش ما به حالت تمام صفحه رفته و با کلیک مجدد به حالت عادی باز گردد. دانلود سورس پروژه : fullscreen_as3_iflashlord.zip برای این کار می [...]]]></description>
			<content:encoded><![CDATA[<p style="font-family: Tahoma,Verdana,sans-serif; direction: rtl;" align="right">
	<img src="http://blog.iflashlord.com/wp-content/uploads/2011/12/fullscreen_as3_flash_iflashlord.jpg" alt="iflashlord.com" />
	</p><p style="font-family: Tahoma,Verdana,sans-serif; direction: rtl;" align="right">در این مطلب به تمام صفحه کردن یا همان fullscreen کردن در اکشن اسکریپت ۳ می پردازیم و دکمه ای را ایجاد می کنیم که با کلیک بر روی آن فلش ما به حالت تمام صفحه رفته و با کلیک مجدد به حالت عادی باز گردد.</p>
<p style="font-family: Tahoma,Verdana,sans-serif; direction: rtl;" align="right"><span id="more-1780"></span></p>
<blockquote><p style="font-family: Tahoma,Verdana,sans-serif; direction: rtl;" align="right">دانلود سورس پروژه : <a href="http://blog.iflashlord.com/wp-content/uploads/2011/12/fullscreen_as3_iflashlord.zip" target="_blank">fullscreen_as3_iflashlord.zip</a></p></blockquote>
<p style="font-family: Tahoma,Verdana,sans-serif; direction: rtl;" align="right">برای این کار می بایست از متد displayState مربوط به Stage استفاده کنیم و به آن مقدار دهی نماییم ؛ در حالت عادی مقدار روی normal تنظیم شده است برای تمام صفحه شدن ما مقدار را روی fullScreen قرار می دهیم با این کار فلش به حالت تمام صفحه می رود.</p>
<p style="font-family: Tahoma,Verdana,sans-serif; direction: rtl;" align="right">ما به جای مقدار رشته ای می توانیم از ثابت های StageDisplayState استفاده نماییم ، برای normal از StageDisplayState.NORMAL و برای fullScreen از StageDisplayState.FULL_SCREEN استفاده می کنیم. البته شما در استفاده هر دو نوع آزاد هستید.</p>
<p style="font-family: Tahoma,Verdana,sans-serif; direction: rtl;" align="right">در ابتدا کلاس های مورد نیاز را import می کنیم :</p>
<pre class="brush: as3; title: ; notranslate">
//وارد کردن کلاس های مورد نیاز
import flash.events.MouseEvent;
import flash.display.Stage;
import flash.display.StageDisplayState;
import flash.display.StageScaleMode;
</pre>
<p style="font-family: Tahoma,Verdana,sans-serif; direction: rtl;" align="right">در مرحله بعد دکمه ای ایجاد می کنیم ، برای این کار در این نمونه از یک MovieClip استفاده می کنیم که ۲ فریم دارد و در فریم اول متن <strong>تمام صفحه</strong> و در فریم دوم متن <strong>حالت عادی</strong> را قرار می دهیم، این کار برای این است که در هر زمان بتوانیم عملکرد دکمه را به کاربر نشان دهیم. شما می توانید از نمادهای گرافیکی نیز برای این کار استفاده کنید.</p>
<p style="font-family: Tahoma,Verdana,sans-serif; direction: rtl;" align="right">حال رویداد CLICK را برای زمان کلیک کردن روی کمه فعال می کنیم</p>
<pre class="brush: as3; title: ; notranslate">
//ایجاد رویداد کلیک برای دکمه
fullscreen_btn.addEventListener(MouseEvent.CLICK , switchFullScreen , false , 0 , true);
</pre>
<p style="font-family: Tahoma,Verdana,sans-serif; direction: rtl;" align="right">و توسط متد buttonMode ما به MovieClip مان حالت دکمه می دهیم</p>
<pre class="brush: as3; title: ; notranslate">
//ایجاد حالت دکمه ای برای مووی کلیپ
fullscreen_btn.buttonMode =true;
</pre>
<p style="font-family: Tahoma,Verdana,sans-serif; direction: rtl;" align="right">حال تابع switchFullScreen را تعریف می کنیم و درون آن یک if قرار می دهیم تا در زمانی که فلش ما در حالت عادی بود به با کلیک به حالت تمام صفحه برود و زمانی که در حال تمام صفحه بود با کلیک به حالت عادی برود</p>
<pre class="brush: as3; title: ; notranslate">

function switchFullScreen(e:MouseEvent)
{
	if (stage.displayState == StageDisplayState.NORMAL)
	{
		//مقدار دهی تمام صفحه
		stage.displayState = StageDisplayState.FULL_SCREEN;
		//نمایش حالت عادی برای دکمه
		fullscreen_btn.gotoAndStop(2);
	}
	else
	{
		//مقدار دهی حالت نرمال
		stage.displayState = StageDisplayState.NORMAL;
		//نمایش تمام صفحه برای دکمه
		fullscreen_btn.gotoAndStop(1);
	}
}
</pre>
<p style="font-family: Tahoma,Verdana,sans-serif; direction: rtl;" align="right">حال اگر دقت کرده باشید در حالت تمام صفحه پروژه شما نسبت به طول و عرض مانیتور شما کشیده می شود در صورتی که بخواهید جلوی این کشیدگی را بگیرید می بایست از متد stage.scaleMode استفاده کنید و آن را بر روی StageDisplayState.NO_SCALE قرار دهید :</p>
<pre class="brush: as3; highlight: [7,8]; title: ; notranslate">
function switchFullScreen(e:MouseEvent)
{
	if (stage.displayState == StageDisplayState.NORMAL)
	{
		//مقدار دهی تمام صفحه
		stage.displayState = StageDisplayState.FULL_SCREEN;
		//برای حفظ ساختار بعد از تمام صفحه شدن - در صورت نیاز
		stage.scaleMode = StageScaleMode.NO_SCALE;
		//نمایش حالت عادی برای دکمه
		fullscreen_btn.gotoAndStop(2);
	}
	else
	{
		//مقدار دهی حالت نرمال
		stage.displayState = StageDisplayState.NORMAL;
		//نمایش تمام صفحه برای دکمه
		fullscreen_btn.gotoAndStop(1);
	}
}
</pre>
<p style="font-family: Tahoma,Verdana,sans-serif; direction: rtl;" align="right"><strong>نکته برای استفاده در مرورگرها :</strong></p>
<p style="font-family: Tahoma,Verdana,sans-serif; direction: rtl;" align="right">اگر قصد دارید مثلا وبسایت فلش شما در مرورگر نیز امکان تمام صفحه شدن را داشته باشد می بایست یک بخش به تگ Object مربوطه به کد HTML صفحه خود اضافه کنید ، این بخش کد برای تگ Object به این صورت می باشد :</p>
<pre class="brush: xml; title: ; notranslate">
&lt;param name=&quot;allowFullScreen&quot; value=&quot;true&quot; /&gt;
</pre>
<p style="font-family: Tahoma,Verdana,sans-serif; direction: rtl;" align="right">و در صورتی که از تگ Embed (توصیه نمی شود) استفاده می کنید به این صورت :</p>
<pre class="brush: xml; title: ; notranslate">
&lt;embed ... allowfullscreen=&quot;true&quot; /&gt;
</pre>
<p style="font-family: Tahoma,Verdana,sans-serif; direction: rtl;" align="right"><em>سه نقطه (&#8230;) مربوطه به بخش ها و پارامترهایی دیگری می باشد که در کد قرار داده نشده است.</em></p>
<p style="font-family: Tahoma,Verdana,sans-serif; direction: rtl;" align="right">حال می توانید پروژه خود را توسط فایل HTML آن تست نمایید ، برای ایجاد خودکار فایل HTML کلید F12 را بفشارید و <strong>البته به یاد داشته باشید فایل ایجاد شده را ویرایش کرده و خط کد مربوطه به allowfullscreen را به پارامترهای کد صفحه اضافه کنید</strong></p>
<p style="font-family: Tahoma,Verdana,sans-serif; direction: rtl;" align="right"><strong>نمونه ای برای بهتر متوجه شدن محل اضافه کردن کد :</strong></p>
<pre class="brush: xml; highlight: [10,11]; title: ; notranslate">
...
&lt;param name=&quot;quality&quot; value=&quot;high&quot; /&gt;
&lt;param name=&quot;bgcolor&quot; value=&quot;#ffffff&quot; /&gt;
&lt;param name=&quot;loop&quot; value=&quot;true&quot; /&gt;
&lt;param name=&quot;wmode&quot; value=&quot;window&quot; /&gt;
&lt;param name=&quot;scale&quot; value=&quot;showall&quot; /&gt;
&lt;param name=&quot;menu&quot; value=&quot;true&quot; /&gt;
&lt;param name=&quot;devicefont&quot; value=&quot;false&quot; /&gt;
&lt;param name=&quot;allowScriptAccess&quot; value=&quot;sameDomain&quot; /&gt;
&lt;!--محل افزودن کد--&gt;
&lt;param name=&quot;allowFullScreen&quot; value=&quot;true&quot; /&gt;
...
</pre>
<p style="font-family: Tahoma,Verdana,sans-serif; direction: rtl;" align="right"><em>سه نقطه (&#8230;) مربوطه به بخش ها و پارامترهایی دیگری می باشد که در کد قرار داده نشده است.</em></p>
<p style="font-family: Tahoma,Verdana,sans-serif; direction: rtl;" align="right"><strong>البته توجه داشته باشید که محل قرار گرفتن پارامتر بالاتر و یا پایین تر از دیگر پارامترها مهم نیست.</strong></p>
<p style="font-family: Tahoma,Verdana,sans-serif; direction: rtl;" align="right"><strong>کد نهایی پروژه :</strong></p>
<pre class="brush: as3; title: ; notranslate">
//وارد کردن کلاس های مورد نیاز
import flash.events.MouseEvent;
import flash.display.Stage;
import flash.display.StageDisplayState;
import flash.display.StageScaleMode;

//ایجاد رویداد کلیک برای دکمه
fullscreen_btn.addEventListener(MouseEvent.CLICK , switchFullScreen , false , 0 , true);
//ایجاد حالت دکمه ای برای مووی کلیپ
fullscreen_btn.buttonMode =true;

function switchFullScreen(e:MouseEvent)
{
	if (stage.displayState == StageDisplayState.NORMAL)
	{
		//مقدار دهی تمام صفحه
		stage.displayState = StageDisplayState.FULL_SCREEN;
		//برای حفظ ساختار بعد از تمام صفحه شدن - در صورت نیاز
		stage.scaleMode = StageScaleMode.NO_SCALE;
		//نمایش حالت عادی برای دکمه
		fullscreen_btn.gotoAndStop(2);
	}
	else
	{
		//مقدار دهی حالت نرمال
		stage.displayState = StageDisplayState.NORMAL;
		//نمایش تمام صفحه برای دکمه
		fullscreen_btn.gotoAndStop(1);
	}
}
</pre>
<blockquote><p style="font-family: Tahoma,Verdana,sans-serif; direction: rtl;" align="right">دانلود سورس پروژه : <a href="http://blog.iflashlord.com/wp-content/uploads/2011/12/fullscreen_as3_iflashlord.zip" target="_blank">fullscreen_as3_iflashlord.zip</a></p></blockquote>
]]></content:encoded>
			<wfw:commentRss>http://blog.iflashlord.com/1390/10/%d8%aa%d9%85%d8%a7%d9%85-%d8%b5%d9%81%d8%ad%d9%87-%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>5</slash:comments>
		</item>
		<item>
		<title>اعمال افکت blur به BitmapData در اکشن اسکریپت ۳</title>
		<link>http://blog.iflashlord.com/1390/08/%d8%a7%d8%b9%d9%85%d8%a7%d9%84-%d8%a7%d9%81%da%a9%d8%aa-blur-%d8%a8%d9%87-bitmapdata-%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/1390/08/%d8%a7%d8%b9%d9%85%d8%a7%d9%84-%d8%a7%d9%81%da%a9%d8%aa-blur-%d8%a8%d9%87-bitmapdata-%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>Mon, 21 Nov 2011 00:51:47 +0000</pubDate>
		<dc:creator>بهروز پولادرگ</dc:creator>
				<category><![CDATA[ادوبی فلش]]></category>
		<category><![CDATA[اکشن اسکریپت]]></category>
		<category><![CDATA[برنامه نویسی]]></category>
		<category><![CDATA[actionscript 3]]></category>
		<category><![CDATA[addChild]]></category>
		<category><![CDATA[applyFilter]]></category>
		<category><![CDATA[AS Linkage]]></category>
		<category><![CDATA[AS3]]></category>
		<category><![CDATA[bitmap]]></category>
		<category><![CDATA[BitmapData]]></category>
		<category><![CDATA[blur]]></category>
		<category><![CDATA[blurApply]]></category>
		<category><![CDATA[BlurFilter]]></category>
		<category><![CDATA[blur_effect_bitmapdata_iflashlord]]></category>
		<category><![CDATA[bmd]]></category>
		<category><![CDATA[Ctrl+R]]></category>
		<category><![CDATA[DisplayObject]]></category>
		<category><![CDATA[effect]]></category>
		<category><![CDATA[effectBlur]]></category>
		<category><![CDATA[flash.display.Bitmap]]></category>
		<category><![CDATA[flash.display.BitmapData]]></category>
		<category><![CDATA[flash.geom.Point]]></category>
		<category><![CDATA[flash.geom.Rectangle]]></category>
		<category><![CDATA[Function]]></category>
		<category><![CDATA[Import]]></category>
		<category><![CDATA[Library]]></category>
		<category><![CDATA[MovieClip]]></category>
		<category><![CDATA[MyPic]]></category>
		<category><![CDATA[Point]]></category>
		<category><![CDATA[rect]]></category>
		<category><![CDATA[rect.topLeft]]></category>
		<category><![CDATA[Rectangle]]></category>
		<category><![CDATA[return]]></category>
		<category><![CDATA[stage]]></category>
		<category><![CDATA[آرگمان]]></category>
		<category><![CDATA[ادوبی]]></category>
		<category><![CDATA[افکت]]></category>
		<category><![CDATA[افکت بلور]]></category>
		<category><![CDATA[اکشن اسکریپت 3]]></category>
		<category><![CDATA[بلور]]></category>
		<category><![CDATA[بیتمپ]]></category>
		<category><![CDATA[شی نمایشی]]></category>
		<category><![CDATA[فلش]]></category>

		<guid isPermaLink="false">http://blog.iflashlord.com/?p=1658</guid>
		<description><![CDATA[در این مطلب می خواهیم به روشی ساده برای اعمال افکت blur به یک شی از نوع BitmapData بپردازیم. توجه داشته باشید این نوع اعمال افکت با افکت ها و Filterهای معمول فلش متفاوت هست و بر روی خود BitmapData اعمال می شود و نه بر روی MovieClip ی که تصویری در آن قرار دارد. [...]]]></description>
			<content:encoded><![CDATA[<p style="font-family: Tahoma,Verdana,sans-serif; direction: rtl;" align="right">
	<img src="http://blog.iflashlord.com/wp-content/uploads/2011/11/blur_effect_bitmapdata_as3_iflashlord.jpg" alt="iflashlord.com" />
	</p><p style="font-family: Tahoma,Verdana,sans-serif; direction: rtl;" align="right">در این مطلب می خواهیم به روشی ساده برای اعمال افکت blur به یک شی از نوع BitmapData بپردازیم. توجه داشته باشید این نوع اعمال افکت با افکت ها و Filterهای معمول فلش متفاوت هست و بر روی خود BitmapData اعمال می شود و نه بر روی MovieClip ی که تصویری در آن قرار دارد.</p>
<p style="font-family: Tahoma,Verdana,sans-serif; direction: rtl;" align="right"><span id="more-1658"></span></p>
<blockquote><p style="font-family: Tahoma,Verdana,sans-serif; direction: rtl;" align="right">دانلود سورس : <a title="blur_effect_bitmapdata_iflashlord" href="http://blog.iflashlord.com/wp-content/uploads/2011/11/blur_effect_bitmapdata_iflashlord.zip">blur_effect_bitmapdata_iflashlord.zip  </a></p></blockquote>
<p style="font-family: Tahoma,Verdana,sans-serif; direction: rtl;" align="right">یک پروژه جدید در نرم افزار ادوبی فلش ایجاد نمایید و یک تصویر را وارد برنامه کنید (Ctrl+R) در این مثال ما از تصویر زیر استفاده کرده ایم.</p>
<p style="font-family: Tahoma,Verdana,sans-serif; direction: rtl;" align="right"><img class="alignnone size-full wp-image-1661" title="blur_bitmap_sample_image_iflashlord" src="http://blog.iflashlord.com/wp-content/uploads/2011/11/blur_bitmap_sample_image_iflashlord.jpg" alt="" width="469" height="349" /></p>
<p style="font-family: Tahoma,Verdana,sans-serif; direction: rtl;" align="right">و کلاس های مورد نیاز را import می کنیم :</p>
<pre class="brush: as3; title: ; notranslate">
import flash.display.BitmapData;
import flash.display.Bitmap;
import flash.geom.Rectangle;
import flash.geom.Point;
</pre>
<p style="font-family: Tahoma,Verdana,sans-serif; direction: rtl;" align="right">در مرحله بعد تابعی با نام blurApply ایجاد می کنیم و آرگمان آن را bmd و از نوع BitmapData قرار می دهیم.</p>
<pre class="brush: as3; title: ; notranslate">
function blurApply(bmd:BitmapData):BitmapData
{
	var effectBlur:BlurFilter = new BlurFilter(4,4,3);
	var rect:Rectangle = new Rectangle(0,0,bmd.width ,bmd.height );
	var point:Point = new Point(0,0);

	bmd.applyFilter(bmd , rect , point , effectBlur);

	return bmd;
}
</pre>
<p style="font-family: Tahoma,Verdana,sans-serif; direction: rtl;" align="right">در این تابع ابتدا یک متغیر با نام effectBlur می سازیم و نوع آن را BlurFilter قرار می دهیم و یک نمونه از کلاس BlurFilter را ایجاد می کنیم ، آرگمان های ورودی این کلاس سه مورد می باشد که دو مورد اول برای ایجاد افکت blur در طول و عرض می باشد و مورد سوم مربوطه به کیفیت این افکت که بر روی شی ما اعمال می شود.</p>
<p style="font-family: Tahoma,Verdana,sans-serif; direction: rtl;" align="right">در خط بعد ما یک متغیر از نوع Rectangle با نام rect ایجاد می کنیم ایم متغیر در واقع وظیفه مشخص کردن محدوده ای می باشد که قرار است افکت بر روی آن اعمال شود به همین دلیل دو مقدار اولیه که x, y می باشند و محل شروع را مشخص می کنند با ۰ و ۰ مقدار دهی شده اند و دو مقدار بعدی که مربوطه به عرض و طول می باشند با عرض و طول BitmapData که آرگمان ورودی این تابع می باشد مقدار دهی شده اند.</p>
<p style="font-family: Tahoma,Verdana,sans-serif; direction: rtl;" align="right">در خط بعد یک Point نیز با مقدار ۰,۰ ایجاد می کنیم که مشخص کننده گوشه سمت چپ و بالایی شی می باشد. به جای این بخش می توانیم از rect.topLeft نیز استفاده کنیم.</p>
<p style="font-family: Tahoma,Verdana,sans-serif; direction: rtl;" align="right">در خط بعد توسط applyFilter اقدام به اعمال افکت بر روی شی خود می نماییم، این متد مربوطه به BitmapData می باشد و آرگمان های ورودی آن به ترتیب مربوطه به شی BitmapData و محدوده مشخص کننده ، point و افکت تعریف شده ، می باشد.</p>
<p style="font-family: Tahoma,Verdana,sans-serif; direction: rtl;" align="right">تغییرات مورد نظر ما در این تابع بر روی bmd انجام شده است ، حال bmd را به عنوان مقدار بازگشتی تابع در خط آخر تابع return می کنیم.</p>
<p style="font-family: Tahoma,Verdana,sans-serif; direction: rtl;" align="right">تا این مرحله تابع مورد نظر ما ایجاد شد ، حال به نحوه استفاده آن می پردازیم. تصویری که در ابتدا در پروژه وارد کردیم را از stage حذف می کنیم به بخش Library می رویم و AS Linkage آن را با  MyPic مقدار دهی می کنیم.</p>
<p style="font-family: Tahoma,Verdana,sans-serif; direction: rtl;" align="right"><img class="alignnone size-full wp-image-1663" title="as_linkage_sample_image_iflashlord" src="http://blog.iflashlord.com/wp-content/uploads/2011/11/as_linkage_sample_image_iflashlord.png" alt="" width="357" height="346" /></p>
<p style="font-family: Tahoma,Verdana,sans-serif; direction: rtl;" align="right">حال یک متغیر با نام myPic و از نوع MyPic ایجاد می کنیم و آن را با یک نمونه از MyPic مقدار دهی می کنیم.</p>
<pre class="brush: as3; title: ; notranslate">
var myPic:MyPic = new MyPic();//دریافت تصویر از کتابخانه
</pre>
<p style="font-family: Tahoma,Verdana,sans-serif; direction: rtl;" align="right">سپس یک متغیر با نام bit می سازیم و آن را از نوع کلاس Bitmap قرار می دهیم و یک نمونه از کلاس Bitmap را به آن نسبت می دهیم در آرگمان اول مربوطه با کلاس Bitmap مقدار myPic را وارد می کنیم.</p>
<pre class="brush: as3; title: ; notranslate">
var bit:Bitmap = new Bitmap(myPic);
</pre>
<p style="font-family: Tahoma,Verdana,sans-serif; direction: rtl;" align="right">در مرحله بعد نیز خصوصیت BitmapData مربوطه به متغیر bit را توسط تابع ایجاد شده مقدار دهی می کنیم.</p>
<pre class="brush: as3; title: ; notranslate">
bit.bitmapData = blurApply(bit.bitmapData);
addChild(bit);
</pre>
<p style="font-family: Tahoma,Verdana,sans-serif; direction: rtl;" align="right">و در آخر نیز bit را توسط <a title="توابع در اکشن اسکریپت ۳" href="http://blog.iflashlord.com/1388/08/%d8%aa%d9%88%d8%a7%d8%a8%d8%b9-%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/">addChild </a>به شی نمایشی (<a title="Display List و اکشن اسکریپت ۳" href="http://blog.iflashlord.com/1388/09/display-list-%d9%88-%d8%a7%da%a9%d8%b4%d9%86-%d8%a7%d8%b3%da%a9%d8%b1%db%8c%d9%be%d8%aa-3/">DisplayObject</a>) اضافه می کنیم تا در صفحه نمایش داده شود.</p>
<p style="font-family: Tahoma,Verdana,sans-serif; direction: rtl;" align="right">نتیجه به این شکل خواهد بود :</p>
<p style="font-family: Tahoma,Verdana,sans-serif; direction: rtl;" align="right"><img class="alignnone size-full wp-image-1664" title="blured_sample_image_iflashlord" src="http://blog.iflashlord.com/wp-content/uploads/2011/11/blured_sample_image_iflashlord.jpg" alt="" width="469" height="349" /></p>
<p style="font-family: Tahoma,Verdana,sans-serif; direction: rtl;" align="right">حال اگر در تابع در بخش rect که مربوطه به محدوده ای می باشد که افکت بر روی آن اعمال می شود ، مقدارهای عرض و طول را تقسیم بر ۲ کنیم در واقع افکت بر روی یک چهارم تصویر اعمال می شود.</p>
<pre class="brush: as3; highlight: [4]; title: ; notranslate">
function blurApply(bmd:BitmapData):BitmapData
{
	var effectBlur:BlurFilter = new BlurFilter(4,4,3);
	var rect:Rectangle = new Rectangle(0,0,bmd.width/2 ,bmd.height/2 );
	var point:Point = new Point(0,0);

	bmd.applyFilter(bmd , rect , point , effectBlur);

	return bmd;
}
</pre>
<p style="font-family: Tahoma,Verdana,sans-serif; direction: rtl;" align="right">و نتیجه خروجی به این شکل خواهد بود :</p>
<p style="font-family: Tahoma,Verdana,sans-serif; direction: rtl;" align="right"><img class="alignnone size-full wp-image-1665" title="blured_half_sample_image_iflashlord" src="http://blog.iflashlord.com/wp-content/uploads/2011/11/blured_half_sample_image_iflashlord.jpg" alt="" width="469" height="349" /></p>
<p style="font-family: Tahoma,Verdana,sans-serif; direction: rtl;" align="right">شما این امکان را دارید که با مقدار دهی دو آرگمان اول rectangle در بخش نمایشی تصویر جا به جایی ایجاد کنید و توسط مقدار دهی دو آرگمان point مختصات محل نمایش بخشی که افکت بر روی آن اعمال شده را تغییر دهید.</p>
<p style="font-family: Tahoma,Verdana,sans-serif; direction: rtl;" align="right">در پایان تمام کدهایی که برای این پروژه نیاز می باشد را در زیر قرار می دهیم:</p>
<pre class="brush: as3; title: ; notranslate">
import flash.display.BitmapData;
import flash.display.Bitmap;
import flash.geom.Rectangle;
import flash.geom.Point;

function blurApply(bmd:BitmapData):BitmapData
{
	var effectBlur:BlurFilter = new BlurFilter(4,4,3);
	var rect:Rectangle = new Rectangle(0,0,bmd.width ,bmd.height);
	var point:Point = new Point(0,0);

	bmd.applyFilter(bmd , rect , point , effectBlur);

	return bmd;
}

var myPic:MyPic = new MyPic();//دریافت تصویر از کتابخانه
var bit:Bitmap = new Bitmap(myPic);

bit.bitmapData = blurApply(bit.bitmapData);
addChild(bit);
</pre>
<blockquote><p style="font-family: Tahoma,Verdana,sans-serif; direction: rtl;" align="right">دانلود سورس : <a title="blur_effect_bitmapdata_iflashlord" href="http://blog.iflashlord.com/wp-content/uploads/2011/11/blur_effect_bitmapdata_iflashlord.zip">blur_effect_bitmapdata_iflashlord.zip  </a></p></blockquote>
]]></content:encoded>
			<wfw:commentRss>http://blog.iflashlord.com/1390/08/%d8%a7%d8%b9%d9%85%d8%a7%d9%84-%d8%a7%d9%81%da%a9%d8%aa-blur-%d8%a8%d9%87-bitmapdata-%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>11</slash:comments>
		</item>
		<item>
		<title>ایجاد دسترسی به stage و root در کلاس ها</title>
		<link>http://blog.iflashlord.com/1390/08/%d8%a7%db%8c%d8%ac%d8%a7%d8%af-%d8%af%d8%b3%d8%aa%d8%b1%d8%b3%db%8c-%d8%a8%d9%87-stage-%d9%88-root-%d8%af%d8%b1-%da%a9%d9%84%d8%a7%d8%b3-%d9%87%d8%a7/</link>
		<comments>http://blog.iflashlord.com/1390/08/%d8%a7%db%8c%d8%ac%d8%a7%d8%af-%d8%af%d8%b3%d8%aa%d8%b1%d8%b3%db%8c-%d8%a8%d9%87-stage-%d9%88-root-%d8%af%d8%b1-%da%a9%d9%84%d8%a7%d8%b3-%d9%87%d8%a7/#comments</comments>
		<pubDate>Sun, 20 Nov 2011 01:34:43 +0000</pubDate>
		<dc:creator>بهروز پولادرگ</dc:creator>
				<category><![CDATA[ادوبی ایر]]></category>
		<category><![CDATA[ادوبی فلش]]></category>
		<category><![CDATA[اکشن اسکریپت]]></category>
		<category><![CDATA[برنامه نویسی]]></category>
		<category><![CDATA[ADDED_TO_STAGE]]></category>
		<category><![CDATA[addEventListener]]></category>
		<category><![CDATA[Event]]></category>
		<category><![CDATA[Event.ADDED_TO_STAGE]]></category>
		<category><![CDATA[extends]]></category>
		<category><![CDATA[import flash.display.DisplayObject]]></category>
		<category><![CDATA[import flash.display.MovieClip]]></category>
		<category><![CDATA[import flash.display.Stage]]></category>
		<category><![CDATA[import flash.events.Event]]></category>
		<category><![CDATA[MovieClip]]></category>
		<category><![CDATA[MyClass]]></category>
		<category><![CDATA[public]]></category>
		<category><![CDATA[removeEventListener]]></category>
		<category><![CDATA[افزوده شده به استیج]]></category>
		<category><![CDATA[اکشن اسکریپت 3]]></category>
		<category><![CDATA[دسترسی به root]]></category>
		<category><![CDATA[دسترسی به stage]]></category>
		<category><![CDATA[رویداد]]></category>
		<category><![CDATA[فلش]]></category>
		<category><![CDATA[مووی کلیپ]]></category>
		<category><![CDATA[کلاس]]></category>
		<category><![CDATA[گسترش]]></category>

		<guid isPermaLink="false">http://blog.iflashlord.com/?p=1646</guid>
		<description><![CDATA[همان طور که می دانید درون کلاس ها دسترسی مستقیم به stage و root وجود ندارد به طور مثال در یک کلاس که از یک MovieClip گشترش (extends) داده شده است ، شما نمی توانید stage.stageWidth را trace کنید و در واقع آن را دریافت کنید و مقداری که در زمان trace به شما نشان [...]]]></description>
			<content:encoded><![CDATA[<p style="font-family: Tahoma,Verdana,sans-serif; direction: rtl;" align="right">
	<img src="http://blog.iflashlord.com/wp-content/uploads/2011/11/stage_root_access_as3_iflashlord.jpg" alt="iflashlord.com" />
	</p><p style="font-family: Tahoma,Verdana,sans-serif; direction: rtl;" align="right">همان طور که می دانید درون کلاس ها دسترسی مستقیم به <strong>stage</strong> و <strong>root</strong> وجود ندارد به طور مثال در یک کلاس که از یک <strong>MovieClip</strong> گشترش (<strong>extends</strong>) داده شده است ، شما نمی توانید <strong>stage.stageWidth</strong> را <strong>trace</strong> کنید و در واقع آن را دریافت کنید و مقداری که در زمان trace به شما نشان داده می شود <strong>null</strong> می باشد. در این مطلب ما به راه حل ساده ای برای این موضوع می پردازیم که توسط آن می توانید به راحتی به <strong>stage</strong> و <strong>root</strong> مربوطه به <strong>DisplayObject</strong> خود دسترسی داشته باشید.</p>
<p style="font-family: Tahoma,Verdana,sans-serif; direction: rtl;" align="right"><span id="more-1646"></span></p>
<blockquote><p style="font-family: Tahoma,Verdana,sans-serif; direction: rtl;" align="right">دانلود سورس : <a title="stage_root_access_in_class_as3_iflashlord" href="http://blog.iflashlord.com/wp-content/uploads/2011/11/stage_root_access_in_class_as3_iflashlord.zip">stage_root_access_in_class_as3_iflashlord.zip</a></p></blockquote>
<p style="font-family: Tahoma,Verdana,sans-serif; direction: rtl;" align="right">ابتدا به یک مثال برای مواردی که دسترسی وجود ندارد می پردازیم تا در صورتی که تا به حال با این مورد رو به رو نشده اید ، موضوع بیشتر برای شما باز شود.</p>
<pre class="brush: as3; title: ; notranslate">
package
{
	import flash.events.Event;
	import flash.display.MovieClip;

	public class MyClass extends MovieClip
	{
	   public function MyClass()
		{

		trace(stage);//null
		//trace(stage.stageWidth);//TypeError

		}

	}
}
</pre>
<p style="font-family: Tahoma,Verdana,sans-serif; direction: rtl;" align="right">در مثال بالا شما نمی توانید به <strong>stage</strong> و <strong>stageWidth</strong> دسترسی داشته باشید.</p>
<p style="font-family: Tahoma,Verdana,sans-serif; direction: rtl;" align="right">حال به راه حل این موضوع می پردازیم ، در صورتی که بخواهیم همین مثال بالا به درستی امکان دسترسی به <strong>stage</strong> را داشته باشد می بایست ابتدا درون تابع <strong>constractor</strong> که همیشه هم نام کلاس می باشد (در این مثال <strong>MyClsss</strong>) ،رویداد (<strong>Event.ADDED_TO_STAGE</strong>)  را تعریف کرد و آن را به تابعی که در مثال ما <strong>added</strong> می باشد ارجاع داد ( Event.ADDED_TO_STAGE,<strong dir="ltr">added</strong> ). حال درون تابع <strong>added</strong> ما دسترسی کامل به <strong>stage</strong> داریم و می توانید به طور مثال <strong>stage.stageWidth</strong> را <strong>trace</strong> نماییم. در ضمن حال می توانید رویداد تعریف شده را حذف نماییم (<strong>removeEventListener</strong>).</p>
<p style="font-family: Tahoma,Verdana,sans-serif; direction: rtl;" align="right">به کد زیر دقت کنید:</p>
<pre class="brush: as3; title: ; notranslate">
package
{
	import flash.display.MovieClip;
	import flash.events.Event;

	public class MyClass extends MovieClip
	{
	   public function MyClass()
		{
			addEventListener(Event.ADDED_TO_STAGE,added);
		}

		public function added(e:Event):void{
			removeEventListener(Event.ADDED_TO_STAGE,added);
			trace(stage.stageWidth); //محتوای عددی

		}
	}
}
</pre>
<p style="font-family: Tahoma,Verdana,sans-serif; direction: rtl;" align="right">حال این کلاس را می توانیم برای <strong>root</strong> نیز بیشتر توسعه دهیم و تغییراتی در آن اعمال کنیم، در زیر نمونه کامل شده را مشاهده می کنید :</p>
<pre class="brush: as3; title: ; notranslate">
package {

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

	public class MyClass extends MovieClip {

		public static var stage:Stage;
		public static var root:DisplayObject;

		public function MyClass() {
			if (this.stage){
				added();
			}else{
				addEventListener(Event.ADDED_TO_STAGE, added);
			}
			trace(stage); //null
			//trace(stage.width); //TypeError
		}

		private function added(e:Event = null):void {
			if (e){
				removeEventListener(Event.ADDED_TO_STAGE, added);
			}
			MyClass.stage = this.stage;
			MyClass.root = this;

			trace(MyClass.stage)
			trace(MyClass.root)
		}
	}
}
</pre>
<p style="font-family: Tahoma,Verdana,sans-serif; direction: rtl;" align="right">همان طور که در کد بالا مشاهده می کنید دو متغیر <strong>static</strong> ایجاد شده است که این امکان را به شما می دهد به مقدارهای <strong>stage</strong> در <strong>root</strong> بعد از مقدار دهی شدن به راحتی دسترسی داشته باشید.</p>
<p style="font-family: Tahoma,Verdana,sans-serif; direction: rtl;" align="right">اگر دوست داشته باشیم کدمان کمی از نمونه کنونی<strong><a title="بهینه سازی فلش – فعال سازی و غیر فعال سازی رویدادها" href="http://blog.iflashlord.com/1390/02/%d8%a8%d9%87%db%8c%d9%86%d9%87-%d8%b3%d8%a7%d8%b2%db%8c-%d9%81%d9%84%d8%b4-%d9%81%d8%b9%d8%a7%d9%84-%d8%b3%d8%a7%d8%b2%db%8c-%d9%88-%d8%ba%db%8c%d8%b1-%d9%81%d8%b9%d8%a7%d9%84-%d8%b3%d8%a7%d8%b2/"> بهینه تر </a></strong>باشد می توانیم با تغییرات کوچکی این کار را انجام دهیم.</p>
<pre class="brush: as3; highlight: [17]; title: ; notranslate">
package {

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

	public class MyClass extends MovieClip {

		public static var stage:Stage;
		public static var root:DisplayObject;

		public function MyClass() {
			if (this.stage){
				added();
			}else{
				addEventListener(Event.ADDED_TO_STAGE, added , false , 0 , true);
			}
			trace(stage); //null
			//trace(stage.width); //TypeError
		}

		private function added(e:Event = null):void {
			if (e){
				removeEventListener(Event.ADDED_TO_STAGE, added);
			}
			MyClass.stage = this.stage;
			MyClass.root = this;

			trace(MyClass.stage)
			trace(MyClass.root)
		}
	}
}
</pre>
<p style="font-family: Tahoma,Verdana,sans-serif; direction: rtl;" align="right">حال شاید این سوال در ذهن شما ایجاد شود که چگونه می توان از این کلاس استفاده نمود ، برای استفاده نیز در زیر به مثالی بسیار ساده می پردازیم.</p>
<pre class="brush: as3; title: ; notranslate">
import MyClass;
var myClass:MyClass = new MyClass();
addChild(myClass);
trace(&quot;myClass.stage.stageWidth:&quot;+myClass.stage.stageWidth)
</pre>
<blockquote><p style="font-family: Tahoma,Verdana,sans-serif; direction: rtl;" align="right"> دانلود سورس : <a title="stage_root_access_in_class_as3_iflashlord" href="http://blog.iflashlord.com/wp-content/uploads/2011/11/stage_root_access_in_class_as3_iflashlord.zip">stage_root_access_in_class_as3_iflashlord.zip</a></p></blockquote>
]]></content:encoded>
			<wfw:commentRss>http://blog.iflashlord.com/1390/08/%d8%a7%db%8c%d8%ac%d8%a7%d8%af-%d8%af%d8%b3%d8%aa%d8%b1%d8%b3%db%8c-%d8%a8%d9%87-stage-%d9%88-root-%d8%af%d8%b1-%da%a9%d9%84%d8%a7%d8%b3-%d9%87%d8%a7/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>اعمال StyleSheet داخلی به فیلد متنی</title>
		<link>http://blog.iflashlord.com/1390/08/%d8%a7%d8%b9%d9%85%d8%a7%d9%84-stylesheet-%d8%af%d8%a7%d8%ae%d9%84%db%8c-%d8%a8%d9%87-%d9%81%db%8c%d9%84%d8%af-%d9%85%d8%aa%d9%86%db%8c/</link>
		<comments>http://blog.iflashlord.com/1390/08/%d8%a7%d8%b9%d9%85%d8%a7%d9%84-stylesheet-%d8%af%d8%a7%d8%ae%d9%84%db%8c-%d8%a8%d9%87-%d9%81%db%8c%d9%84%d8%af-%d9%85%d8%aa%d9%86%db%8c/#comments</comments>
		<pubDate>Fri, 18 Nov 2011 23:10:10 +0000</pubDate>
		<dc:creator>بهروز پولادرگ</dc:creator>
				<category><![CDATA[ادوبی فلش]]></category>
		<category><![CDATA[اکشن اسکریپت]]></category>
		<category><![CDATA[برنامه نویسی]]></category>
		<category><![CDATA[سی اس اس]]></category>
		<category><![CDATA[actionscript 3]]></category>
		<category><![CDATA[AS3]]></category>
		<category><![CDATA[color]]></category>
		<category><![CDATA[css]]></category>
		<category><![CDATA[css.setStyle]]></category>
		<category><![CDATA[Flash]]></category>
		<category><![CDATA[Import]]></category>
		<category><![CDATA[INTERNAL]]></category>
		<category><![CDATA[Object]]></category>
		<category><![CDATA[setStyle]]></category>
		<category><![CDATA[String]]></category>
		<category><![CDATA[StyleSheet]]></category>
		<category><![CDATA[text]]></category>
		<category><![CDATA[اکشن اسکریپت 3]]></category>
		<category><![CDATA[داخلی]]></category>
		<category><![CDATA[فلش]]></category>
		<category><![CDATA[قالب بندی]]></category>
		<category><![CDATA[پاراگراف]]></category>

		<guid isPermaLink="false">http://blog.iflashlord.com/?p=1629</guid>
		<description><![CDATA[در این مطلب به ساخت StyleSheet داخلی (INTERNAL) در اکشن اسکریپت ۳ می پردازیم ، این موارد برای زمانی که شما نیازی به فایل CSS خارجی نداشته باشید و بخواهید از فرامین قالب بندی CSS درون اکشن اسکریپت استفاده کنید، برای این کار از کلاس StyleSheet استفاده می کنیم. در ابتدا ما کلاس مورد نیاز [...]]]></description>
			<content:encoded><![CDATA[<p style="font-family: Tahoma,Verdana,sans-serif; direction: rtl;" align="right">
	<img src="http://blog.iflashlord.com/wp-content/uploads/2011/10/css_external_as3_iflashlord.jpg" alt="iflashlord.com" />
	</p><p style="font-family: Tahoma,Verdana,sans-serif; direction: rtl;" align="right">در این مطلب به ساخت <a title="اعمال یک StyleSheet خارجی به فیلد متنی" href="http://blog.iflashlord.com/1390/08/%d8%a7%d8%b9%d9%85%d8%a7%d9%84-%db%8c%da%a9-stylesheet-%d8%ae%d8%a7%d8%b1%d8%ac%db%8c-%d8%a8%d9%87-%d9%81%db%8c%d9%84%d8%af-%d9%85%d8%aa%d9%86%db%8c/">StyleSheet </a>داخلی (INTERNAL) در اکشن اسکریپت ۳ می پردازیم ، این موارد برای زمانی که شما نیازی به <a title="اعمال یک StyleSheet خارجی به فیلد متنی" href="http://blog.iflashlord.com/1390/08/%d8%a7%d8%b9%d9%85%d8%a7%d9%84-%db%8c%da%a9-stylesheet-%d8%ae%d8%a7%d8%b1%d8%ac%db%8c-%d8%a8%d9%87-%d9%81%db%8c%d9%84%d8%af-%d9%85%d8%aa%d9%86%db%8c/">فایل CSS خارجی </a>نداشته باشید و بخواهید از فرامین قالب بندی CSS درون اکشن اسکریپت استفاده کنید، برای این کار از کلاس <a title="اعمال یک StyleSheet خارجی به فیلد متنی" href="http://blog.iflashlord.com/1390/08/%d8%a7%d8%b9%d9%85%d8%a7%d9%84-%db%8c%da%a9-stylesheet-%d8%ae%d8%a7%d8%b1%d8%ac%db%8c-%d8%a8%d9%87-%d9%81%db%8c%d9%84%d8%af-%d9%85%d8%aa%d9%86%db%8c/">StyleSheet </a>استفاده می کنیم.</p>
<p style="font-family: Tahoma,Verdana,sans-serif; direction: rtl;" align="right"><span id="more-1629"></span>در ابتدا ما کلاس مورد نیاز را import می کنیم</p>
<pre class="brush: as3; title: ; notranslate">
import flash.text.StyleSheet;
</pre>
<p style="font-family: Tahoma,Verdana,sans-serif; direction: rtl;" align="right">در مرحله بعد متغییر css را تعریف می کنیم و نوع آن را StyleSheet قرار می دهیم و یک نمونه از کلاس StyleSheet را به عنوان مقدار آن قرار می دهیم.</p>
<pre class="brush: as3; title: ; notranslate">
var css:StyleSheet = new StyleSheet();
css.setStyle(&quot;p&quot;, {color: &quot;#FF0000&quot;});

example_txt.styleSheet = css;
example_txt.text = &quot;&lt;p&gt;iflashlord.com&lt;/p&gt; sample text!&quot;
</pre>
<p style="font-family: Tahoma,Verdana,sans-serif; direction: rtl;" align="right">سپس با استفاده از متد <strong>setStyle</strong> فرامین مربوطه به <strong>css</strong> را مقدار دهی می کنیم ، در این مثال به تگ پاراگراف در <strong>HTML</strong> می باشد که با (<strong>p</strong>) مشخص می شود ، خصوصیت <strong>color</strong> که مربوطه به رنگ می باشد به آن نسبت داده شده است. توجه نمایید مقدارهای هر تگ یا کلاس یا شناسه در <strong>CSS</strong> به صورت یک <strong>Object</strong> به عنوان آرگمان دوم متد<strong> setStyle</strong> مقدار دهی می شود. آرگمان اول نیز به صورت رشته متنی (<strong>String</strong>) می باشد و مربوطه به نام تگ (به طور مثال <strong>p</strong>) نام کلاس (به طور مثال <strong dir="ltr">.test</strong> ) و نام شناسه (به طور مثال <strong dir="ltr">#test</strong> ) و&#8230; می باشد.</p>
<p style="font-family: Tahoma,Verdana,sans-serif; direction: rtl;" align="right">در مرحله بعد متغیر <strong>css</strong> را به عنوان متد <strong>styleSheet</strong> مربوطه به تکست فیلد مقدار دهی می کنیم.</p>
<p style="font-family: Tahoma,Verdana,sans-serif; direction: rtl;" align="right">و در مرحله آخر محتوای متنی <strong>HTML</strong> خود را به فیلد متنی نسبت می دهیم و نتیجه را مشاهده می کنیم ، طبق کد بالا می بایست متن <strong>iflashlord.com</strong> به صورت قرمز (<strong>FF0000</strong>) چاپ شود و باقی متون با رنگ پیش فرض تکست فیلد.</p>
<p style="font-family: Tahoma,Verdana,sans-serif; direction: rtl;" align="right">با کمک این کد می توانید قالب بندی مربوطه به بخش های مختلف را توسط کدهای اکشن اسکریپت و <strong>css</strong> با دستی بازتر انجام دهید.</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.iflashlord.com/1390/08/%d8%a7%d8%b9%d9%85%d8%a7%d9%84-stylesheet-%d8%af%d8%a7%d8%ae%d9%84%db%8c-%d8%a8%d9%87-%d9%81%db%8c%d9%84%d8%af-%d9%85%d8%aa%d9%86%db%8c/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>ساخت تابع getURL در اکشن اسکریپت ۳</title>
		<link>http://blog.iflashlord.com/1390/08/%d8%b3%d8%a7%d8%ae%d8%aa-%d8%aa%d8%a7%d8%a8%d8%b9-geturl-%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/1390/08/%d8%b3%d8%a7%d8%ae%d8%aa-%d8%aa%d8%a7%d8%a8%d8%b9-geturl-%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>Fri, 18 Nov 2011 06:54:14 +0000</pubDate>
		<dc:creator>بهروز پولادرگ</dc:creator>
				<category><![CDATA[ادوبی فلش]]></category>
		<category><![CDATA[اکشن اسکریپت]]></category>
		<category><![CDATA[برنامه نویسی]]></category>
		<category><![CDATA[actionscript 3]]></category>
		<category><![CDATA[AS3]]></category>
		<category><![CDATA[catch]]></category>
		<category><![CDATA[Flash]]></category>
		<category><![CDATA[flash.net.navigateToURL]]></category>
		<category><![CDATA[flash.net.URLRequest]]></category>
		<category><![CDATA[getURL]]></category>
		<category><![CDATA[navigateToURL]]></category>
		<category><![CDATA[target]]></category>
		<category><![CDATA[try]]></category>
		<category><![CDATA[URI]]></category>
		<category><![CDATA[URL]]></category>
		<category><![CDATA[URLRequest]]></category>
		<category><![CDATA[آرگمان]]></category>
		<category><![CDATA[اکشن اسکریپت 2]]></category>
		<category><![CDATA[اکشن اسکریپت 3]]></category>
		<category><![CDATA[فلش]]></category>

		<guid isPermaLink="false">http://blog.iflashlord.com/?p=1638</guid>
		<description><![CDATA[اگر با اکشن اسکریپت ۲ کار کرده باشید حتما می دانید ،برای درخواست های بازکردن لینک ها و آدرس های وب و درخواست های وب از فرمان getURL استفاده می شود. البته این تابع به این شکل دیگر در اکشن اسکریپت ۳ پشتیبانی نمی شود. در این مطلب می خواهیم این تابع را با همان [...]]]></description>
			<content:encoded><![CDATA[<p style="font-family: Tahoma,Verdana,sans-serif; direction: rtl;" align="right">
	<img src="http://blog.iflashlord.com/wp-content/uploads/2011/11/geturl_iflashlord.jpg" alt="iflashlord.com" />
	</p><p style="font-family: Tahoma,Verdana,sans-serif; direction: rtl;" align="right">اگر با اکشن اسکریپت ۲ کار کرده باشید حتما می دانید ،برای درخواست های بازکردن لینک ها و آدرس های وب و درخواست های وب از فرمان getURL استفاده می شود. البته این تابع به این شکل دیگر در اکشن اسکریپت ۳ پشتیبانی نمی شود. در این مطلب می خواهیم این تابع را با همان نام قدیمی و آرگمان های قدیمی برای اکشن اسکریپت ۳ آماده کنیم.</p>
<p style="font-family: Tahoma,Verdana,sans-serif; direction: rtl;" align="right"><span id="more-1638"></span></p>
<p style="font-family: Tahoma,Verdana,sans-serif; direction: rtl;" align="right">ابتدا کلاس های مورد نیاز را import می کنیم</p>
<pre class="brush: as3; title: ; notranslate">
import flash.net.URLRequest;
import flash.net.navigateToURL;
</pre>
<p style="font-family: Tahoma,Verdana,sans-serif; direction: rtl;" align="right">در مرحله بعد ما تابعی با همان نام (getURL) تعریف می کنیم و آرگمان ها را نیز به همان صورت معرفی می کنیم ، آرگمان اول در getURL مربوطه به آدرس (URL) و آرگمان دوم target که به نوع باز شدن مربوطه می شد.</p>
<pre class="brush: as3; title: ; notranslate">
function getURL(url:String, target:String = null)
{
	try
	{
		navigateToURL(new URLRequest(url), target);
	}
	catch (error:Error)
	{
		trace(&quot;[getURL] &quot;+error);
	}
}
</pre>
<p style="font-family: Tahoma,Verdana,sans-serif; direction: rtl;" align="right">در نهایت بخش اصلی کد ما که آن را درون try می نویسیم تا بتوانیم خطای احتمالی آن را catch کنیم. در این بخش طبق استاندارد جدید اکشن اسکرپیت ۳ برای بازکردن لینک ها از کلاس های navigateToURL و URLRequest استفاده می کنیم. که نقش URLRequest مشخص کردن محتوای متنی به عنوان درخواست URL می باشد و نقش navigateToURL باز کردن پیوند (link) طبق آرگمان های ورودی می باشد.</p>
<p style="font-family: Tahoma,Verdana,sans-serif; direction: rtl;" align="right">حال می توانید با سرعت بیشتر و مثل تابع getURL درخواست های مربوطه به پیوند های خودتان را اجرا نمایید.</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.iflashlord.com/1390/08/%d8%b3%d8%a7%d8%ae%d8%aa-%d8%aa%d8%a7%d8%a8%d8%b9-geturl-%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>Citrus Engine رایگان و اوپن سورس!</title>
		<link>http://blog.iflashlord.com/1390/08/citrus-engine-%d8%b1%d8%a7%db%8c%da%af%d8%a7%d9%86-%d9%88-%d8%a7%d9%88%d9%be%d9%86-%d8%b3%d9%88%d8%b1%d8%b3/</link>
		<comments>http://blog.iflashlord.com/1390/08/citrus-engine-%d8%b1%d8%a7%db%8c%da%af%d8%a7%d9%86-%d9%88-%d8%a7%d9%88%d9%be%d9%86-%d8%b3%d9%88%d8%b1%d8%b3/#comments</comments>
		<pubDate>Sun, 13 Nov 2011 01:19:52 +0000</pubDate>
		<dc:creator>بهروز پولادرگ</dc:creator>
				<category><![CDATA[ادوبی ایر]]></category>
		<category><![CDATA[ادوبی فلش]]></category>
		<category><![CDATA[اکشن اسکریپت]]></category>
		<category><![CDATA[برنامه نویسی]]></category>
		<category><![CDATA[عمومی]]></category>
		<category><![CDATA[actionscript]]></category>
		<category><![CDATA[AS3]]></category>
		<category><![CDATA[box2d]]></category>
		<category><![CDATA[Citrus]]></category>
		<category><![CDATA[Citrus Engine]]></category>
		<category><![CDATA[Engine]]></category>
		<category><![CDATA[اوپن سورس]]></category>
		<category><![CDATA[اکشن اسکریپت 3]]></category>
		<category><![CDATA[بازی]]></category>
		<category><![CDATA[حرفه ای]]></category>
		<category><![CDATA[رایگان]]></category>
		<category><![CDATA[فلش]]></category>
		<category><![CDATA[قابل گسترش]]></category>
		<category><![CDATA[موتور]]></category>
		<category><![CDATA[موتور بازی سازی]]></category>

		<guid isPermaLink="false">http://blog.iflashlord.com/?p=1618</guid>
		<description><![CDATA[Citrus Engine چست؟ یک موتور بازی سازی با درجه حرفه ای ، قابل گسترش ، و با کیفیت صنعتی برای ساخت بازی فلش می باشد ، این موتور بر اساس شیوه های مدرن برنامه نویسی فلش ساخته شده است و تمرکز آن در کمک به شما برای ساخت یک بازی بسیار جذاب می باشد. برای [...]]]></description>
			<content:encoded><![CDATA[<p style="font-family: Tahoma,Verdana,sans-serif; direction: rtl;" align="right">
	<img src="http://blog.iflashlord.com/wp-content/uploads/2011/11/ce2_game_engine_iflashlord.jpg" alt="iflashlord.com" />
	</p><p style="font-family: Tahoma,Verdana,sans-serif; direction: rtl;" align="right"><strong>Citrus Engine چست؟</strong></p>
<p style="font-family: Tahoma,Verdana,sans-serif; direction: rtl;" align="right">یک موتور بازی سازی با درجه حرفه ای ، قابل گسترش ، و با کیفیت صنعتی برای ساخت بازی فلش می باشد ، این موتور بر اساس شیوه های مدرن برنامه نویسی فلش ساخته شده است و تمرکز آن در کمک به شما برای ساخت یک بازی بسیار جذاب می باشد. <a href="http://citrusengine.com/about" target="_blank">برای اطلاعات بیشتر به این صفحه مراجعه کنید</a>.</p>
<p style="font-family: Tahoma,Verdana,sans-serif; direction: rtl;" align="right"><span id="more-1618"></span></p>
<p style="font-family: Tahoma,Verdana,sans-serif; direction: rtl;" align="right"><strong>این موتور در گذشته با قیمتی حدود ۴۰۰ دلار در اختیار کاربران و توسعه دهندگان قرار می گرفته است که خوشبختانه هم اکنون به صورت رایگان و اوپن سورس می باشد.</strong></p>
<p style="font-family: Tahoma,Verdana,sans-serif; direction: rtl;" align="right">کاربرد اصلی این موتور برای ساخت بازی های پلاتفورمر می باشد ، برای هسته این موتور از زبان اکشن اسکریپت ۳ استفاده شده است که بخش تحلیل فیزیکی آن نیز توسط box2d کنترل می شود ، نمونه ای از این دست بازی ها را می توانید در <a href="http://citrusengine.com/" target="_blank">صفحه اول وب سایت Citrus Engine </a>ببنید.</p>
<p style="font-family: Tahoma,Verdana,sans-serif; direction: rtl;" align="right">در ضمن این موتور با یک نرم افزار برای ساخت مرحله کار ساخت مراحل بازی را ساده و ساده تر می کند ، این نرم افزار توسط ادوبی ایر ایجاد شده است ، پیشنهاد می کنم این برنامه را هم حتما تست نمایید.</p>
<p style="font-family: Tahoma,Verdana,sans-serif; direction: rtl;" align="right">نکته مهم در مورد استفاده از موتورهای بازی سازی ، نیاز داشتن به دانش کمتر در مورد بازی سازی و برنامه نویسی می باشد که می تواند گروه زیادی را وارد دنیای جذاب بازی سازی در فلش نماید..</p>
<p style="font-family: Tahoma,Verdana,sans-serif; direction: rtl;" align="right">فکر می کنم هم اکنون وقت آن باشد که شما هم با این موتور بیشتر آشنا شوید و آن را محکی بزنید.</p>
<p style="font-family: Tahoma,Verdana,sans-serif; direction: rtl;" align="right"><a href="http://citrusengine.com/" target="_blank">وب سایت رسمی <strong>Citrus Engine</strong></a></p>
]]></content:encoded>
			<wfw:commentRss>http://blog.iflashlord.com/1390/08/citrus-engine-%d8%b1%d8%a7%db%8c%da%af%d8%a7%d9%86-%d9%88-%d8%a7%d9%88%d9%be%d9%86-%d8%b3%d9%88%d8%b1%d8%b3/feed/</wfw:commentRss>
		<slash:comments>4</slash:comments>
		</item>
		<item>
		<title>حذف http و www توسط اکشن اسکریپت ۳</title>
		<link>http://blog.iflashlord.com/1390/08/%d8%ad%d8%b0%d9%81-http-%d9%88-www-%d8%aa%d9%88%d8%b3%d8%b7-%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/1390/08/%d8%ad%d8%b0%d9%81-http-%d9%88-www-%d8%aa%d9%88%d8%b3%d8%b7-%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>Fri, 11 Nov 2011 13:18:24 +0000</pubDate>
		<dc:creator>بهروز پولادرگ</dc:creator>
				<category><![CDATA[ادوبی فلش]]></category>
		<category><![CDATA[اکشن اسکریپت]]></category>
		<category><![CDATA[برنامه نویسی]]></category>
		<category><![CDATA[AS3]]></category>
		<category><![CDATA[Boolean]]></category>
		<category><![CDATA[false]]></category>
		<category><![CDATA[Flash]]></category>
		<category><![CDATA[Function]]></category>
		<category><![CDATA[https]]></category>
		<category><![CDATA[RegExp]]></category>
		<category><![CDATA[replace]]></category>
		<category><![CDATA[String]]></category>
		<category><![CDATA[stripHttp]]></category>
		<category><![CDATA[stripWWW]]></category>
		<category><![CDATA[true]]></category>
		<category><![CDATA[اکشن اسکریپت 3]]></category>
		<category><![CDATA[حذف http]]></category>
		<category><![CDATA[حذف www]]></category>
		<category><![CDATA[عبارات با قائده]]></category>
		<category><![CDATA[عبارات با قاعده]]></category>
		<category><![CDATA[فلش]]></category>

		<guid isPermaLink="false">http://blog.iflashlord.com/?p=1604</guid>
		<description><![CDATA[تابعی که ما در این مطلب اقدام به ساخت آن می کنیم ، یک محتوای متنی را دریافت می کند و تمامی http:// و https:// های موجود دار آن را حذف می کند و در صورتی که آرگمان دوم آن که stripWWW می باشد برابر با true قرار داده شود تمامی www ها را نیز [...]]]></description>
			<content:encoded><![CDATA[<p style="font-family: Tahoma,Verdana,sans-serif; direction: rtl;" align="right">
	<img src="http://blog.iflashlord.com/wp-content/uploads/2011/11/strip_http_www_iflashlord.jpg" alt="iflashlord.com" />
	</p><p style="font-family: Tahoma,Verdana,sans-serif; direction: rtl;" align="right">تابعی که ما در این مطلب اقدام به ساخت آن می کنیم ، یک محتوای متنی را دریافت می کند و تمامی http:// و https:// های موجود دار آن را حذف می کند و در صورتی که آرگمان دوم آن که stripWWW می باشد برابر با true قرار داده شود تمامی www ها را نیز حذف می کند ، به طور پیش فرض ما این آرگمان را در تابعی که کد آن در زیر قرار داده شده است false قرار داده ایم.</p>
<p style="font-family: Tahoma,Verdana,sans-serif; direction: rtl;" align="right"><span id="more-1604"></span>برای بهتر متوجه شدن نتیجه این تابع به این مثال توجه کنید ، متن ورود ما که به عنوان آرگمان string در تابع تعریف شده است :</p>
<pre class="brush: plain; title: ; notranslate">
آخرین پروژه های اجرا شده را می توانید در http://www.iflashlord.com ببینید
</pre>
<p style="font-family: Tahoma,Verdana,sans-serif; direction: rtl;" align="right">متنی که بعد از استفاده این مقدار در تابع به عنوان آرگمان اول ، خروجی داده می شود به صورت زیر خواهد بود:</p>
<pre class="brush: plain; title: ; notranslate">
آخرین پروژه های اجرا شده را می توانید در www.iflashlord.com ببینید
</pre>
<p style="font-family: Tahoma,Verdana,sans-serif; direction: rtl;" align="right">و در صورتی که آرگمان دوم true باشد :</p>
<pre class="brush: plain; title: ; notranslate">
آخرین پروژه های اجرا شده را می توانید در iflashlord.com ببینید
</pre>
<p style="font-family: Tahoma,Verdana,sans-serif; direction: rtl;" align="right"><strong>حال به کد تابع می پردازیم:</strong></p>
<pre class="brush: as3; title: ; notranslate">

function stripHttp(string:String, stripWWW:Boolean = false):String
{
	var s:String = string;
	var regexp:RegExp = new RegExp(! stripWWW ? &quot;https*:\/\/&quot;:&quot;https*:\/\/(www\.)*&quot;,&quot;ig&quot;);
	return s.replace(regexp, &quot;&quot;);
}
</pre>
<p style="font-family: Tahoma,Verdana,sans-serif; direction: rtl;" align="right">بعد از تعریف تابع و آرگمان های آن ، یک متغییر برای ذخیره سازی کپی از متن ورودی در آن با نام s می سازیم ، سپس با کمک گرفتن از <a title="حذف فاصله های موجود در یک نوشته توسط اکشن اسکریپت ۳" href="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/">عبارات با قائده </a>و تابع <a title="slugify کردن متن در اکشن اسکریپت ۳" href="http://blog.iflashlord.com/1390/08/slugify-%da%a9%d8%b1%d8%af%d9%86-%d9%85%d8%aa%d9%86-%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/">RegExp </a>متغیر regexp را تعریف می کنیم ، این متغیر در واقع اشاره گری به تمامی http:// و https:// و www ها می باشد (در این مثال) و با استفاده از آن برای متد replace مربوطه به string ها و جا به جا کردن این مقادیر با مقدار &#8220;&#8221; که نشان گر مقدار پوچ می باشد ،این مقادیر را از رشته متنی خود حذف می کنیم</p>
<p style="font-family: Tahoma,Verdana,sans-serif; direction: rtl;" align="right">در نهایت رشته متنی نهایی که محتوای بازگشتی s.<a title="حذف فاصله های موجود در یک نوشته توسط اکشن اسکریپت ۳" href="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/">replace</a> می باشد را توسط return بازگشت می دهیم.</p>
<p style="font-family: Tahoma,Verdana,sans-serif; direction: rtl;" align="right">برای استفاده از این تابع به شکل زیر اقدام می کنیم :</p>
<pre class="brush: as3; title: ; notranslate">

trace (stripHttp(&quot;آخرین پروژه های اجرا شده را می توانید در http://www.iflashlord.com ببینید&quot; , true));
//آخرین پروژه های اجرا شده را می توانید در iflashlord.com ببینید

trace (stripHttp(&quot;آخرین پروژه های اجرا شده را می توانید در http://www.iflashlord.com ببینید&quot; , false));
//آخرین پروژه های اجرا شده را می توانید در www.iflashlord.com ببینید
</pre>
]]></content:encoded>
			<wfw:commentRss>http://blog.iflashlord.com/1390/08/%d8%ad%d8%b0%d9%81-http-%d9%88-www-%d8%aa%d9%88%d8%b3%d8%b7-%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>randomBoolean در اکشن اسکریپت ۳</title>
		<link>http://blog.iflashlord.com/1390/08/randomboolean-%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/1390/08/randomboolean-%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>Wed, 09 Nov 2011 01:10:32 +0000</pubDate>
		<dc:creator>بهروز پولادرگ</dc:creator>
				<category><![CDATA[ادوبی فلش]]></category>
		<category><![CDATA[اکشن اسکریپت]]></category>
		<category><![CDATA[برنامه نویسی]]></category>
		<category><![CDATA[actionscript]]></category>
		<category><![CDATA[actionscript 3]]></category>
		<category><![CDATA[AS3]]></category>
		<category><![CDATA[Boolean]]></category>
		<category><![CDATA[false]]></category>
		<category><![CDATA[Math]]></category>
		<category><![CDATA[Math.random()]]></category>
		<category><![CDATA[random]]></category>
		<category><![CDATA[randomBoolean]]></category>
		<category><![CDATA[return]]></category>
		<category><![CDATA[true]]></category>
		<category><![CDATA[اتفاقی]]></category>
		<category><![CDATA[اکشن اسکریپت 3]]></category>
		<category><![CDATA[تابع]]></category>
		<category><![CDATA[درست یا غلط رندوم]]></category>
		<category><![CDATA[رندوم]]></category>
		<category><![CDATA[رندوم بولین]]></category>
		<category><![CDATA[فلش]]></category>

		<guid isPermaLink="false">http://blog.iflashlord.com/?p=1583</guid>
		<description><![CDATA[در این مطلب اقدام به ایجاد تابعی در اکشن اسکریپت ۳ می کنیم که بتوانم توسط آن به صورت اتفاقی true یا false را بازگشت دهیم. برای این کار ما ابتدا بعد از تعریف نام تابع که در این مثال randomBoolean هستند و بعد از () ها توسط علامت ( : ) نوع خروجی بازگشتی [...]]]></description>
			<content:encoded><![CDATA[<p style="font-family: Tahoma,Verdana,sans-serif; direction: rtl;" align="right">
	<img src="http://blog.iflashlord.com/wp-content/uploads/2011/11/random_boolean_as3_iflashlord.jpg" alt="iflashlord.com" />
	</p><p style="font-family: Tahoma,Verdana,sans-serif; direction: rtl;" align="right">در این مطلب اقدام به ایجاد تابعی در اکشن اسکریپت ۳ می کنیم که بتوانم توسط آن به صورت اتفاقی true یا false را بازگشت دهیم.</p>
<p style="font-family: Tahoma,Verdana,sans-serif; direction: rtl;" align="right"><span id="more-1583"></span>برای این کار ما ابتدا بعد از تعریف نام تابع که در این مثال randomBoolean هستند و بعد از () ها توسط علامت ( : ) نوع خروجی بازگشتی تابع را Boolean مشخص می کنیم.</p>
<p style="font-family: Tahoma,Verdana,sans-serif; direction: rtl;" align="right">سپس با کمک گرفتم از متد random مربوطه به کلاس Math و ایجاد شرط توسط علامت بزرگتر مساوی و استفاده از خروجی رندوم دریافت شده ، به مقدار true یا false اتفاقی برای بازگشت دادن دسترسی پیدا می کنیم.</p>
<p style="font-family: Tahoma,Verdana,sans-serif; direction: rtl;" align="right"><em>حال به کد مربوطه توجه نمایید:</em></p>
<pre class="brush: as3; title: ; notranslate">
function randomBoolean():Boolean
{
	return Math.random() &gt;= 0.5;
}
//تست خروجی
trace(randomBoolean());
</pre>
<p style="font-family: Tahoma,Verdana,sans-serif; direction: rtl;" align="right">در این تابع وقتی Math.random() اجرا می شود یک عدد رندوم بین ۰ تا ۱ خروجی می دهد در صورتی که این عدد بزرگتر و یا مساوی ۰.۵ باشد برنامه true را return می کند و در غیر این صورت false را بازگشت می دهد.</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.iflashlord.com/1390/08/randomboolean-%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>
	</channel>
</rss>

<!-- Performance optimized by W3 Total Cache. Learn more: http://www.w3-edge.com/wordpress-plugins/

Minified using disk: basic (Feed is rejected)
Page Caching using disk: enhanced
Database Caching 1/8 queries in 0.161 seconds using disk: basic
Object Caching 4789/4791 objects using disk: basic

Served from: blog.iflashlord.com @ 2012-02-09 17:33:20 -->
