تولید چوب خط با کلیک بر روی دکمه ای

سلام دوستان. فرض کنید در صفحه دکمه ای با نام button_1 و 5 شکل دیگر داریم. حال می خواهیم با هر بار کلیک بر روی دکمه، شکل ها نوبتی روئت شوند. با یک بار کلیک بر روی دکمه، شکل mc1 با کلیک بعدی شکل mc2 با کلیک سوم شکل mc3 و ... نشان داده شود.
نمونه سورس رو براتون پیوست میکنم اما کدنویسی اون هنوز مونده. ممنون میشم کمکم کنید.
 

پیوست ها

  • Chob Khat.rar
    7.7 کیلوبایت · بازدیدها: 14
آخرین ویرایش:
یعنی سوال من اینقد سخته؟
دوستان و اساتید منتظر یاری شما هستم کماکان
 

myfirst

Member
چوب خطا رو توی یه مووی کلیپ قرار دادم.
یه دکمه اضافه کردم
هر بار روی دکمه کلیک کنی مقدار i رو (اگه کوچکتر از 5 باشه) یکی اضافه میکنه.
توی شرط یه خط رو کامنت کردم. اگه از اون خط استفاده کنی چوب خطا یکی یکی نمایش داده میشن و بعد یکی یکی غیب میشن
 

پیوست ها

  • ChobKhat.zip
    9.3 کیلوبایت · بازدیدها: 4
آخرین ویرایش:
چوب خطا رو توی یه مووی کلیپ قرار دادم.
یه دکمه اضافه کردم
هر بار روی دکمه کلیک کنی مقدار i رو (اگه کوچکتر از 5 باشه) یکی اضافه میکنه.
توی شرط یه خط رو کامنت کردم. اگه از اون خط استفاده کنی چوب خطا یکی یکی نمایش داده میشن و بعد یکی یکی غیب میشن
دوست عزیز فکر کنم فایل رو اشتباهی آپلود کردین این همون فایل قبلیه.
 

myfirst

Member
سلام. عذر می خوام. فایل جدیدو براتون گذاشتم.
 

پیوست ها

  • ChobKhat.zip
    9.3 کیلوبایت · بازدیدها: 21
بسیار عالی بود دوست عزیز فقط یه سوال دیگه اینکه من میخوام یه دکمه ای دیگه هم داشته باشم که وقتی روش کلیک میشه چوب خط هارو یکی یکی پاک کنه. یعنی یه دکمه یکی یکی تولید کنه و دکمه ی دیگه یکی یکی کم کنه. دکمه ای که شما قرار دادین همه رو یک جا پاک میکنه. بسیار سپاسگزارم
 

myfirst

Member
import flash.events.MouseEvent;
import flash.ui.Mouse;


var i,j:uint = 0;


function hideAll(e:MouseEvent=null):void
{
mcHolder.mc1.visible = false;
mcHolder.mc2.visible = false;
mcHolder.mc3.visible = false;
mcHolder.mc4.visible = false;
mcHolder.mc5.visible = false;
i = 0;
}
hideAll();


function Hide(e:MouseEvent)
{
j++;
i = 0;
if (j > mcHolder.numChildren)
{
j = 0;
}
else
{


mcHolder["mc" + j].visible = false;
//mcHolder["mc"+i].visible = !(mcHolder["mc"+i].visible);
}




}


btn.addEventListener(MouseEvent.CLICK , act , false,0,true);
btn2.addEventListener(MouseEvent.CLICK , Hide , false,0,true);
function act(MouseEvent):void
{


i++;
j = 0;
if (i > mcHolder.numChildren)
{
i = 0;
}
else
{


mcHolder["mc" + i].visible = true;
//mcHolder["mc"+i].visible = !(mcHolder["mc"+i].visible);
}


}



اینو به جای کدت جایگزین کن
 
متشکر خیلی عالی بود فقط میشه کاری کرد هنگام حذف چوب خط ها آونا از آخر به اول پاک بشه نه از اول به آخر؟
 

myfirst

Member
PHP:
import flash.events.MouseEvent;import flash.ui.Mouse;
var i:uint = 0;

function hideAll(e:MouseEvent=null):void{	mcHolder.mc1.visible = false;	mcHolder.mc2.visible = false;	mcHolder.mc3.visible = false;	mcHolder.mc4.visible = false;	mcHolder.mc5.visible = false;	i = 0;	}hideAll();
function Hide(e:MouseEvent){
	trace(i);	if (i < 0)	{		i = 5;	}	else	{
		mcHolder["mc" + i].visible = false;		//mcHolder["mc"+i].visible = !(mcHolder["mc"+i].visible);	}
	i--;	trace(i);
}
btn.addEventListener(MouseEvent.CLICK , act , false,0,true);btn2.addEventListener(MouseEvent.CLICK , Hide , false,0,true);function act(MouseEvent):void{
	i++;		if (i > mcHolder.numChildren)	{		i = 5;	}	else	{
		mcHolder["mc" + i].visible = true;		//mcHolder["mc"+i].visible = !(mcHolder["mc"+i].visible);	}
}
 
حالا هم یه مشکل دیگه بروز کرده و اونم اینکه هنگامی که هیچ چوب خطی رو تولید نکردیم اگر روی دکمه ی btn2 یعنی حذف چوب خط کلیک کنیم چون هیچ چوب خطی وجود ندارد ارور زیر نمایش داده میشه.و یا اینکه اگه دو بار چوب خط تولید کنیم سپس 3 بار روی حذف کلیک کینم بعد از آنکه دو چوب خط تولید شده حذف می شوند برای کلیک سوم ارور میده.
[PHPS]TypeError: Error #1010: A term is undefined and has no properties.
at ChobKhat_fla::MainTimeline/Hide()[/PHPS]
 

myfirst

Member
شما باید دکمه مورد نظر رو وقتی هیچ چوب خطی نیست disable کنید. به محض کلیک روی دکمه نمایش اونو enable کنید. این کار رو می تونید با بررسی متغییر i هم انجام بدید
 

BehrouzPc

پــــادشــاه فــلــــش
قفل از hide کردن وجود و یا عدم وجود شی مربوطه را چک کنید
موفق و پیروز باشید
 

جدیدترین ارسال ها

بالا