Вход

Просмотр полной версии : подгрузка текста во flash 8


sy555
10.08.2009, 18:23
Добрый день, простой вопрос,
как текст подгрузить в динамическое поле , в 6 версии делал так:

on(press)
{
loadVariables("vars.txt",_root.m1);
}


при 8 плеере уже не работает, как поправить?

mooncar
10.08.2009, 18:52
Сейчас используется замечательный класс LoadVars.
Замечетелен класс тем, что имеет события onData и onLoad, которые позволяют отследить момент, когда файл действительно загружен, или данные
действительно готовы. Так исключаются казусы, связанные с асинхронностью работы AS.
Все действия, которые необходимо предпринять с данными, выполняйте внутри функций, соответствующих этим событиям.

Чтобы полностью загрузить текст как значение строковой переменной:
var my_lv:LoadVars = new LoadVars();
my_lv.onData = function(src:String) {
if (src != undefined) {
content_tf.text = src;
}
};

load_btn.onRelease = function() {
my_lv.load("content.txt");
};

где content_tf - имя динамического поля (не переменная var, которая ассоциирована с полем, а именно инстанс-нэйм!);
load_btn - имя кнопки для загрузки
my_lv - экземпляр класса LoadVars

Чтобы получить из файла разбор пар переменная - значение:
var my_lv:LoadVars = new LoadVars();
my_lv.onLoad = function(success:Boolean) {
if (success) {
_root.var1 = this.var1;
_root.var2 = this.var2;
.......
}
};

load_btn.onRelease = function() {
my_lv.load("vars.txt");
};

В файле vars.txt здесь идет строка var1=volume1&var2=volume2....

И не пишите на кнопках и мувиках код, так сейчас не делают, хотя работать будет.

sy555
10.08.2009, 21:19
спасибо, работает . Давно на флеше ,привык уже на кнопки вешать, хотя надо переучиваться)

to_c
13.08.2009, 13:13
И не пишите на кнопках и мувиках код, так сейчас не делают, хотя работать будет.
А почему? Что в этом плохого?

iNils
13.08.2009, 13:31
А почему? Что в этом плохого?
Все плохое.
Нельзя программно изменить или удалить обработчик. Код разбросан по всему файлу, искать и редактировать неудобно. Код дублируется и любая ошибка требует изменения во всех копиях. А в AS3 эту возможность наконец-то убили.