Форум Flasher.ru
Ближайшие курсы в Школе RealTime
Список интенсивных курсов: [см.]  
  
Специальные предложения: [см.]  
  
 
Блоги Правила Справка Пользователи Календарь Сообщения за день
 

Вернуться   Форум Flasher.ru > Flash > ActionScript 3.0

Версия для печати  Отправить по электронной почте    « Предыдущая тема | Следующая тема »  
Опции темы Опции просмотра
 
Создать новую тему Ответ
Старый 02.04.2012, 01:41
fish_r вне форума Посмотреть профиль Отправить личное сообщение для fish_r Посетить домашнюю страницу fish_r Найти все сообщения от fish_r
  № 11  
Ответить с цитированием
fish_r
 
Аватар для fish_r

блогер
Регистрация: Jan 2011
Сообщений: 1,162
Записей в блоге: 4
Чтобы таки сделать то, что хотите можно поступить так: Создайте в библиотеке символ (MovieClip) добавьте туда свое текстовое поле, и в первый кадр ваш код ( с небольшими дополнениями ) :

Код AS3:
import flash.utils.Timer;
import flash.display.MovieClip;
 
 
MovieClip( this.parent ).stop();
    var b1:Timer = new Timer(30000, 1);
    b1.start();
    b1.addEventListener(TimerEvent.TIMER_COMPLETE, function(e:TimerEvent){
        MovieClip( this.parent ).play();
    });
 
var timer:Timer = new Timer(1000, 30);
 
// добавляем это ////////////////////////////////////////////////
timer.addEventListener(TimerEvent.TIMER, onTimer);
function onTimer(event:TimerEvent):void
{
 
	myTextField.text = getBeautifulCount();
}
/////////////////////////////////////////////////////////////////
 
function getCount():uint
{
	return 30 - timer.currentCount;
}
 
function getBeautifulCount():String
{
	var count:int = getCount();
	var m:String = String("0" + int(count / 60)).substr(-2, 2);
	var s:String = String("0" + (count % 60)).substr(-2, 2);
	return m + ":" + s;
}
 
timer.start()
В каждом новом кадре бросайте этот символ на сцену. Тогда получится именно так как вы хотите.

ЗЫ Решение конечно ужасное , но вас извиняют причины по которым вы это делаете

В аттаче пример такой реализации.
Вложения
Тип файла: rar ManyTimers.rar (6.9 Кб, 15 просмотров)

Старый 02.04.2012, 11:25
rustu вне форума Посмотреть профиль Отправить личное сообщение для rustu Найти все сообщения от rustu
  № 12  
Ответить с цитированием
rustu

Регистрация: Mar 2012
Сообщений: 20
Спасибо!=)

Старый 02.04.2012, 13:35
fish_r вне форума Посмотреть профиль Отправить личное сообщение для fish_r Посетить домашнюю страницу fish_r Найти все сообщения от fish_r
  № 13  
Ответить с цитированием
fish_r
 
Аватар для fish_r

блогер
Регистрация: Jan 2011
Сообщений: 1,162
Записей в блоге: 4
Цитата:
Сообщение от wvxvw Посмотреть сообщение
Кроме всего прочего:
Код AS3:
String("0" + int(count / 60)).substr(-2, 2);
эквиваленто:
Код AS3:
("0" + int(count / 60)).substr(-2, 2);
но не делает одной ненужной конвертации, т.как + использованый со строкой и другим параметром вернет строку.
Потестил ради интереса: в среднем, в 6х1 000 000 итераций такая конвертация через String медленнее на 5 - 10 мсек на 1 000 000 итераций. Т.е. безусловно - первый способ медленнее, но имеет ли какое либо значение такая разница в реальных программах? К слову, обработка забытого оператора trace() вызывает замедление на 2 (!) порядка больше

PS Интересно стало потому, что сам почти всё кастую и конвертирую, для автокомплита и чтобы через полгодика, например, побыстрее разобраться.


Последний раз редактировалось fish_r; 02.04.2012 в 14:20.
Старый 02.04.2012, 15:06
wvxvw вне форума Посмотреть профиль Отправить личное сообщение для wvxvw Найти все сообщения от wvxvw
  № 14  
Ответить с цитированием
wvxvw
Modus ponens
 
Аватар для wvxvw

модератор форума
Регистрация: Jul 2006
Адрес: #1=(list #1#)
Сообщений: 8,049
Записей в блоге: 38
Даже если бы на наносекунду медленнее было - зачем делать лишнее?
__________________
Hell is the possibility of sanity

Старый 24.04.2012, 12:01
fish_r вне форума Посмотреть профиль Отправить личное сообщение для fish_r Посетить домашнюю страницу fish_r Найти все сообщения от fish_r
  № 15  
Ответить с цитированием
fish_r
 
Аватар для fish_r

блогер
Регистрация: Jan 2011
Сообщений: 1,162
Записей в блоге: 4
Цитата:
Сообщение от wvxvw Посмотреть сообщение
Даже если бы на наносекунду медленнее было - зачем делать лишнее?
Не ради спора, а просто... чуства ) - просидел сегодня часа два в боевом тупняке потому, что в одном из мест программа с невозмутимым спокойствием обращалась к елементу массива "3", вместо 3, причем в предыдущих компиляциях этой проблемы не было .

* извиняюсь за некро.

Создать новую тему Ответ Часовой пояс GMT +4, время: 09:50.
Быстрый переход
  « Предыдущая тема | Следующая тема »  

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.


 


Часовой пояс GMT +4, время: 09:50.


Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.