Как читать информацию с текстового файла в Flash с помощью ActionScript
24.09.09 Как сделать баннер
Достаточно часто при создании баннеров на Flash требуется, чтобы текст баннера менялся время от времени. Например, можно сделать универсальный акционный flash-баннер, который рекламирует обучающие семинары компании и менять в них дату проведения мероприятия и его тему. Или же баннер, который демонстрирует хиты продаж с ценами, которые тоже время от времени меняются. Конечно, можно сделать базу данных и читать информацию из нее, но если нужно менять 1-2 параметра в баннере, морочиться с базой необязательно. Можно читать параметры для flash-ролика из текстового файла с расширением .txt с помощью кода ActionScript. И сделать это совсем не сложно.
1. Открываем среду разработки flash. В уроке используется Adobe Flash CS3 Professional, но не обязательно использовать именно ее. Adobe Flash 8 тоже подойдет, исходник .fla в скачанном архиве к этому уроку сохранен для Flash 8. Более ранние версии Flash проект .fla не откроют, хотя код ActionScript урока в них работать будет.
2. Создаем новый проект Flash. Он обязательно должен использовать ActionScript 2.0, для ActionScript 3.0 нужны совсем другие действия.
3. Указываем размер будущего flash-ролика, частоту кадров, цвет фона, настройки публикации и т.п. Добавляем в проект Flash слои с картинками, при необходимости добавляем анимации согласно сценарию нашего flash-баннера. В этом уроке нет анимации и картинок, чтобы они не отвлекали от основной темы.
4. Добавляем динамический текст в отдельном слое нашей флэшки. Для этого выбираем инструмент Текст (T) и в выпадающем списке окна Properties выбираем пункт Dynamic Text:
5. Кликаем на заготовке баннера в нужном месте и в нужном кадре слоя txt_1 и даем имя текстовому полю. В нашем случае поле динамического текста flash для отображения названия баннера называется txt_name:
6. Добавляем еще одно динамическое текстовое поле flash в отдельном слое для даты или любой другой информации, присваиваем ему имя txt_date. Меняем размеры текстовых полей, их расположение относительно друг друга, устанавливаем нужные характеристики текста (цвет, шрифт, выравнивание и т.п.) согласно сценарию баннера.
7. Создаем в блокноте текстовый документ для параметров баннера. Имя и расширение файла с параметрами баннера: banner_options.txt. В принципе, можно придумать любое другое имя для файла с параметрами нашего flash-баннера. Тогда нужно исправить название текстового файла в коде ActionSctipt.
В текстовом файле с параметрами для flash должен быть следующий код:
trainingName=Акция «Название акции»&trainingDate=20 января 2010 г
Думаю, интуитивно понятно, что
trainingName – переменная, в которой хранится значение первого текстового поля, считанное из текстового файла
trainingDate – переменная для хранения текста для второго текстового поля, считанного флэшкой из файла banner_options.txt.
Значение параметров пишется без кавычек (если только вы не хотите, чтобы эти кавычки отображались) и для первого текстового поля находится между символами «=» и «&», а для второго – после символа «=».
Если динамических текстовых полей больше, чем два и нужно добавить больше параметров, после значения второго параметра в текстовом файле без пробела ставим еще один символ «&», далее имя переменной из кода ActionScript, символ «=» и сразу же без пробела значение следующего текстового поля.
Баннер способен корректно читать русский текст, латиницу и цифры.
Файл с параметрами должен лежать на сервере в одной папке с баннером или в любом другом месте интернета, если вы укажете в коде ActionScript абсолютный адрес (URL) к файлу параметров.
8. Добавляем ActionScript для чтения параметров баннера из текстового файла. В нужном кадре (в котором должен появиться текст из файла) отдельного слоя actions добавляем следующий код ActionScript 2.0:
1 2 | // отпределяем правильную кодировку файла параметров: System.useCodepage = true; |
// создаем пустые переменные для чтения значений из файлов:
var trainingName:String = «»;
var trainingDate:String = «»;
// вызываем функцию загрузки переменных с именем нашего файла:
loadVariables(«banner_options.txt», _root);
// запускаем таймер для проверки, загрузились ли переменные
gd = setInterval(checkLoading, 10);
// функция, проверяющая, загрузились ли переменные:
function checkLoading() {
// если значения переменных не пусты, то они загружены.
if ((trainingName != «») && (trainingDate != «»)) {
// останавливаем таймер
clearInterval(gd);
//выводим в текстовое поле обе переменные, разделенные дробной чертой.
txt_name.text = trainingName;
txt_date.text = trainingDate;
}
}
Получится примерно так:
9. Готово: flash-баннер читает текст из внешнего источника (текстового файла). Нажмите на клавиатуре F12 при активном окне своей среды разработки Adobe Flash, чтобы увидеть результат выполнения урока. Не забудьте сделать готовый flash-баннер кликабельным.
Читайте также:
- • Контекстная или баннерная реклама - что лучше;
• Почему я делаю баннеры только при полной предоплате;
• Как отредактировать анимированную картинку (аватарку, баннер, смайлик);
• Учимся писать грамотное техническое задание (ТЗ) на разработку баннера;
• Как обойти антибанерные фильтры при размещении своей рекламы;
25 января, 2010 at 12:40
добрый день!
на основе данной статьи пытался сделать интерактивную флеш-открытку. что-то слишком сложно. есть может у вас способ.
это интерактивная открытка. нарисована. какая-нить сцена(например двое целующихся) с предложением ввести свой текст поздравления и отправить его на электронную почту.
заранее спасибо!
25 января, 2010 at 12:48
Денис, нет, такого готового шаблона у меня нет
11 марта, 2011 at 21:04
P.S. Большое спасибо, статья помогла, но не могли бы вы мне объяснить как это же сделать с картинками?
11 марта, 2011 at 20:44
здравствуйте
хорошая статья, но вот не могу понять как создать динамический флеш баннер (что бы подгружать определенную картинку…)
не могли бы вы мне объяснить как это сделать?
13 марта, 2011 at 00:01
Как я понимаю, скрипт дает команду брать нужную инфу из внешнего источника. Вот и все. Тобишь если взять этот код за основу, только указать вместо текстов правило для изображений с конкретным именем и конкретным местом, должно произойти тоже. Меняем картинку присвоив новой старое имя, и вуаля.
Но это мысли человека не орудующего с флешом.