Помогни ни да направим Uroci.net по - богат! Добави урок

Flash Custom CountDown Timer

d0brin   трудност:    видян: 12929

P.S Няма да пиша урока за начинаещи, което значи по-малко картинки :) :P



Pitch: В урока ще разберете как да си направите таймер, който за да отброява дадено време, трябва самият user да го въведе. Таймерът ни ще отброява само минути, секунди и милисекунди защото часове мисля че няма кой да ги чака :D пък и по скоро този таймер е да се импортира към някаква игра, в която примерно има бомба и usera трябва да нагласи времето кога да гръмни или нещо от този сорт :) :).

Така, основната структура на флашът ни ще бъде:

Frame 1: Ще има 2 input text fields, в които ще се въвеждат съответно минутите и секундите. След това код, който да взима въведените данни в тези полета, да ги конвертира във Flash Values за време т.е. милисекунди след което...

Frame 2: Един input text field, в който ще се изпълнява функцията за отброяване, отново нашите text fields с настройките за флаш таимерчето, код който да конвертира данните от тези текстови полета, код който да ги импортира в text field за отброяване и код, който да изпълнява дадена функция след като таймера приключи.



Как да стане всичко това?

FRAME 1

1. Направете нов документ на AS 2.0 (всички параметри по ваш избор)

2. Създайте 2 input text fields.
Text Field 1 -> Instance Name = minutesTF

Text Field 2 -> Instance Name = secondsTF


3. Сложети ги в Movie Clip с Instance Name = pow_mc

4. Направете някаква графика за бутон, която ще ни бъде бутонът, който ще задейства таймера.

5. Сложете го в Movie Clip с Instance Name = countdownBtn

6. Направете нов слой с името Actions и на него в Frame 1, отворете AS панела с F9 и напишете кода:



Code:



_quality = "LOW"

//Определя качеството на създаденият ни .swf файл.

countdownBtn.onRelease = function(){

gotoAndPlay(2);

countdown = 60000*Number(_root.pow_mc.minutesTF.text)+1000*Number(_root.pow_mc.secondsTF.text);

}


//Показва, че когато нашият Movie Clip е натиснат, филмчето ви ще отива на frame 2, и също така създава variable наречена countdown, която всъщност ше ни конвертира данните от текстовите полета. За минутите е по 60 000, защото 1 min = 60 000 ms, а за секундите е по 1000, защото 1 sec = 1000 ms.

_root.pow_mc.minutesTF.text = "00" ;

_root.pow_mc.secondsTF.text = "00" ;

//С това задаваме основните числа, които да съдържат двете текстови полета, съответно основното ни число е 0.




stop();


// За да може клипчето да спре на Frame 1.



var NoMenu:ContextMenu = new ContextMenu ();

NoMenu.hideBuiltInItems();

this.menu = NoMenu;



//За премахване на менюто, което се появява с десен бутон.



Stage.showMenu = false;

//С този код премахваме менюта на Windows прозорец. Т.е. тези менюта File, View, Control.




Страници: 1 2 »

Коментари (1)

simeon10 на 11.10 2010 в 23:44ч.
А има ли начин да се направи, като изтече времето да се изключва компютъра или да се отваря някакъв файл. Извинявам се но днес си изтеглих Flash CS4 и ако може да обясниш по подробно, ако е възможно това за което помолих по горе. :)

Регистрирайте се, за да добавите коментар


Калдейта ЕООД - © 2003-2010. Всички права запазени.
Препоръчваме: IT Новини