Effect تایپ، در فلش؟

oyama19

Member
با سلام.
می خواستم ببینم کسی بلده افکت تایپو به یک متن بده.
یعنی حرف به حرف یک متن، نمایش داده بشه تا متن به پایان برسه.ماسک نمی خواماااا.(برنامه نویسی می خوام)

من که کلی با فارسی استایل حال کردم.یعنی آقای مرتضی واقعا ترکوند.
حالا کسی می تونه روی یک متن داینامیک که حالا متنش ، فارسی یا انگلیسی باشه ، و همچنین از XML ، بارگزاری بشه ، همچین افکتی رو بنویسه؟
من فقط می تونم بگم مثلا میشه یه حلقه درست کرد که حرف به حرف یه متنو هی اضافه کنه تا متن تموم بشه.

هم اکشن 2 و هم اکشن 3
مرسی:rose:
 

BehrouzPc

پــــادشــاه فــلــــش
با سلام.
می خواستم ببینم کسی بلده افکت تایپو به یک متن بده.
یعنی حرف به حرف یک متن، نمایش داده بشه تا متن به پایان برسه.ماسک نمی خواماااا.(برنامه نویسی می خوام)

من که کلی با فارسی استایل حال کردم.یعنی آقای مرتضی واقعا ترکوند.
حالا کسی می تونه روی یک متن داینامیک که حالا متنش ، فارسی یا انگلیسی باشه ، و همچنین از XML ، بارگزاری بشه ، همچین افکتی رو بنویسه؟
من فقط می تونم بگم مثلا میشه یه حلقه درست کرد که حرف به حرف یه متنو هی اضافه کنه تا متن تموم بشه.

هم اکشن 2 و هم اکشن 3
مرسی:rose:
عملا این کار با حلقه قابل انجام نیست ولی با EnterFrame و یا Interval و یا Timer در As3 ,... امکان پذیر هست
در واقع در حلقه ها ما فقط نتیجه نهایی را داریم و نمی توانیم برای متحرک سازی و... از آنها استفاده کنیم
شما متن را Splite می کنید و بعد حرف به حرف در EnterFrame با هر بار عملکرد یک حرف را به متغییری با مقدار خالی که بیرون از EnterFrame تعریف شده اضافه می کند و در فیلد متنی مورد نظر به نمایش می گزارد تا زمانی که به آخرین عنصر برسیم که EnterFrame مربوطه را Delete می کنیم

یک راه ساده تر هم توسط substring هست به صورت زیر :

در فریم 1 :

PHP:
q = 1;
text = "this is where you put your text";
stop();

در فریم 2 :
PHP:
if (q < text.length) {
        textbox = text.substring(0, q);
        q++
} else {
        textbox = text;
        gotoAndStop(1);
}


در فریم 3 :
PHP:
 gotoAndPlay(2);




روشی با استفاده از setInterval


PHP:
var q:Number = 1;
var typeSpeed:Number = 100; // time between letters in milliseconds; smaller numbers dictate faster typing
var copy:String = "Look, Ma! I'm typing in Flash!";
function type():Void {
textbox = copy.substring(0, q);
q++;
if (q == copy.length) {
textbox = copy;
clearInterval(typeInterval);
}
}
typeInterval = setInterval(this, "type", typeSpeed);
 

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

بالا