Просмотр полной версии : Помогите с загрузкой, пожалуйста!
weblancer
17.10.2007, 12:55
Задача банальная, но я чего-то непонимаю.
Скажу сразу, в факе рылся, нашел вариант решения проблемы, он работает, но мне хочется понимания, что я делаю, а не просто чужой рабочий код.
Если кому не влом, объясните, пожалуйста, в двух словах? Могу угостить в Москве пивом. :)
Есть текстовый файл sсhem.txt в нем 4 переменные:
vsq1=1.jpg&vsq2=2.jpg&vsq3=2.jpg&vsq4=1.jpg
Во флеше пишу:
loadVariables ("schem.txt", vars);
trace(vars.vsq1);
В результате - trace выдает undeffined, хотя в дебагере видно, что в level0.vars определены переменные vsq1, vsq2, vsq3 и vsq4 с правильными значениями. И воспользоваться этими переменными не удается никак.
В чем проблема?
возможно не успело загрузиться
this.createEmptyMovieClip("vars",this.getNextHighestDepth());
loadVariables("schem.txt", vars);
function checkParamsLoaded() {
if (vars.vsq1 == undefined) {
trace("not yet.");
} else {
trace(vars.vsq1)
clearInterval(param_interval);
}
}
var param_interval:Number = setInterval(checkParamsLoaded, 100);
weblancer
17.10.2007, 13:26
Так оно только внутри процедуры работает... Если сделать вот так:
loadVariables("schem.txt", vars);
function checkParamsLoaded() {
if (vars.vsq1 == undefined) {
trace("not yet.");
} else {
//trace(vars.vsq1)
clearInterval(param_interval);
}
}
var param_interval:Number = setInterval(checkParamsLoaded, 100);
trace(vars.vsq1);
то опять undeffined получаем...
Основной ролик продолжает выполняться не дожидаясь конца процедуры?
эээ.....
т.е. "не дожидаясь конца процедуры"?
функция может вообще не вызываться:
function f(){
trace("function");
}
// f();
trace("code")
или вызываться (откамменьте).
================================
а теперь по поводу вашего вопроса: в то время как вы пытаетесь вывести значение - оно ещё не загрузилось, т.е. loadVariable не сработало.
сделайте кнопку и не него повесте обработчик нажатия, понажимайте, и тогда вы надеюсь поймете принцип работы:
btn.onPress = function(){
trace(vars.vsq1);
}
weblancer, для оформления своего кода, надо использовать теги . Исправте 1-ый и 4-вы пост. Кроме того, есть кнопка http://www.flasher.ru/forum/images/russian/style3/buttons/edit.gif, поэтому не надо создавать несколько сообщений подряд, надо исправить последнее в теме.
weblancer
17.10.2007, 14:09
to iNils : Прошу прощения, все понял.
to Carrion: Большое спасибо, кажется, разобрался..
нет, если нужно чтобы определенный код выполнился в определенное время - пользуйтесь функциями! они действительно помогают)
weblancer
17.10.2007, 14:38
Будете в Москве - пиво за мной. :)
Mr. Fixit
17.10.2007, 15:23
не советую использовать loadVariables,
пользуйтесь классом LoadVars.
weblancer
17.10.2007, 16:43
to Mr. Fixit: Спасибо, учту.
to Carrion: А если нет функции паузы, то, может, тогда кто-нибудь подскажет, как сделать программно мувику эффект фэйдинга? (когда он плавно становится прозрачным)
weblancer
смотри в хелпе свойства мувика, тебе нужна в частности _alpha
с помощью tweens - делается плавное. с помощью _alpha - прозрачность)
читай help. будут вопросы - обращайтесь)
weblancer
17.10.2007, 18:02
to Мыкыта
Да про свойство _alpha я знаю, мне интересно как сделать ПЛАВНЫЙ фейд. Ведь если я напишу
for (var i:Number = 1; i <= 100; i++) {
myMovie.alpha = i;
}
эта штука мигнет мгновенно и все.
to Carrion: Спасибо, понял.. Надо как-то скомбинировать ActionScript и свойства мувика?
Задача у меня такая - надо брать мувик с картинкой, медленно делать прозрачным, в прозрачный (невидимый) грузить новую картинку и медленно снова возвращать непрозрачность..
weblancer, прочитайте про класс Tween
weblancer
17.10.2007, 18:13
Спасибо.. Попробую.
Не даются мне классы как идеология..
Все пытаюсь без них обойтись, да видно не судьба..
а в AS3 без них вообще никак. так что изучайте)
weblancer
17.10.2007, 18:35
to Carrion: Тогда, пожалуйста, хоть книжку грамотную посоветуйте, или ссылку, если знаете. Тут на форуме искал - нашел только обсуждение.
дело втом что цикл обрабатывается до отрисовки кадра посему никакая анимация не получится =) можно навесить на onEnterFrame но лутше с помощью класа Tween как советовали постами выше
weblancer
17.10.2007, 18:45
ХМ.. у меня flash8 и в хелпе - об AS3 ни слова..
Это значит что - это значит - все?
Финита ля комедиа, пока не куплю что-то поновее?
Без АС3 вы еще пару лет спокойно проживете.
Некоторые до сих пор пишут на АС1 и чуствуют себя прекрасно.
as3 только в flash9 появилось.
а вообще учитесь искать сами - тогда быстрее и глубже все поймете, честно. в обсуждениях на форумах тоже много чего полезного. и fag - полезная вещь.
первое что под руку попалось -
http://demiart.ru/forum/lofi/index.php/t7707.html.
наверное не лучший вариант
weblancer
17.10.2007, 18:54
Хе! Премного благодарен! нашел в хелпе нужное место.
Правда, в понимании классов не продвинулся, но задачу решил. :)
макака макакой.
Работает на vBulletin ® версия 3.7.3. Copyright ©2000-2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Copyright © 1999-2008 Flasher.ru. All rights reserved.