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

Вернуться   Форум Flasher.ru > Архив Flasher.ru > Flash > ActionScript

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

Регистрация: Apr 2001
Адрес: San Pietroburgo
Сообщений: 1,408
ну, давай разбираться:

textVar - переменная, содержащая текст;
textArray - массив, в котором текст разбит по знакам (буквам);
textField - текстовое поле (Dynamic), находящееся например в корне фильма (_root);

На таймлайне создаешь два слоя: верхний содержит textField, в нижнем - ActionScript;

Нижний слой разбит на три кадра (keyframes), следующих строго друг за другом (#1, #2, #3).

В первом кадре (#1) определяем переменную:
textVar = "Это текст, который мы будем выводить на экран";

textArray = textVar.split(""); // split - функция, разбивающая строку в массив по определителю (в скобках), у нас определитель не задан - значит разбиваем каждый элемент

i = 0; //переменная, которая поможет нам перебрать все элементы массива

-----------------------------------------------------------------
Во втором кадре (#2) начинается тот самый цикл, про который я говорил:

i++; //это тоже самое, что i = i + 1 - инкремент (последовательное увеличение переменной на еденицу
)
-----------------------------------------------------------------

В последнем (#3) кадре основное действие: последовательно присваиваем текстовому полю элемент-за-элементом:

if(i<textArray.length) { //проверяем, чтобы i вовремя остановилось (вовремя - это значит когда кончится массив)

_root.textField += textArray[i]; //последовательно прибавляем к текстовому полю элемент, индекс которого = i (помним, что i перебирается от начала до конца всего массива)

gotoAndPlay(2); //переходим на кадр увеличения i на еденицу - то есть это непосредственно действие, образующее цикл

}
else stop(); //как только i больше чем количество элементов массива - останавливаемся.
__________________
I denti non possono dire niente... senza la lingua...
Perche' la tua lingua e' mia!

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

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

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


 


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


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