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

Вернуться   Форум Flasher.ru > Flash > Общие вопросы о Flash (не затрагивающие ActionScript)

Версия для печати  Отправить по электронной почте    « Предыдущая тема | Следующая тема »  
Опции темы Опции просмотра
 
Создать новую тему Ответ
Старый 08.09.2005, 12:43
beginnerflasher2005 вне форума Посмотреть профиль Отправить личное сообщение для beginnerflasher2005 Найти все сообщения от beginnerflasher2005
  № 1  
Ответить с цитированием
beginnerflasher2005

Регистрация: Aug 2005
Сообщений: 12
По умолчанию странное поведение loadVariables

Создаем клип, добавляем динамический текст и связываем его с переменной rr.
В первом кадре вводим:

rr=1;
this.loadVariables("rr.txt");
trace(rr);

Никак не могу понять, что за ерунда такая:
trace выдаёт 1
а динам. поле показывает 1 и сразу 2 (в файле прописано rr=2)

Старый 08.09.2005, 13:18
FreeLander вне форума Посмотреть профиль Отправить личное сообщение для FreeLander Найти все сообщения от FreeLander
  № 2  
Ответить с цитированием
FreeLander
 
Аватар для FreeLander

Регистрация: Jan 2004
Адрес: нигде - не осталось на Земле свободных земель(
Сообщений: 1,176
просто процесс загрузки переменных из файла занимает какое-то время, на тот момент, когда ты трэйсишь rr, загрузка ещё не завершилась

Старый 08.09.2005, 15:57
beginnerflasher2005 вне форума Посмотреть профиль Отправить личное сообщение для beginnerflasher2005 Найти все сообщения от beginnerflasher2005
  № 3  
Ответить с цитированием
beginnerflasher2005

Регистрация: Aug 2005
Сообщений: 12
а как же в этом случае поступать, т.е. продолжить выполнение кода с гарантией что значение изменилось?

Старый 08.09.2005, 16:01
beginnerflasher2005 вне форума Посмотреть профиль Отправить личное сообщение для beginnerflasher2005 Найти все сообщения от beginnerflasher2005
  № 4  
Ответить с цитированием
beginnerflasher2005

Регистрация: Aug 2005
Сообщений: 12
Пробовал так: - ролик "висит"

f=false;

rr=1;
this.loadVariables("rr.txt");
while (f==false) {};
trace(rr);

onData = function(){
f=true;
}

Старый 08.09.2005, 16:15
beginnerflasher2005 вне форума Посмотреть профиль Отправить личное сообщение для beginnerflasher2005 Найти все сообщения от beginnerflasher2005
  № 5  
Ответить с цитированием
beginnerflasher2005

Регистрация: Aug 2005
Сообщений: 12
А вообще, конечно, интересный принцип работы ...
Если я вызвал loadVariables - то, наверное, я хочу сейчас прочитать значения переменных, а не когда получится.
А выходит, что значение переменной поменяется в непредсказуемое время, когда вовсе уже и не надо (код выполняется дальше).
Смысл?!...

Старый 08.09.2005, 16:24
3dmax вне форума Посмотреть профиль Отправить личное сообщение для 3dmax Найти все сообщения от 3dmax
  № 6  
Ответить с цитированием
3dmax

Регистрация: Aug 2005
Сообщений: 133
Я с этой проблемой столкнулся давно и мне предлжили такой вариант,
короче попробуй так:

loadVariables("rr.txt", "");
this.onEnterFrame=function()
{ if(rr) { //пока rr не станет чем-то, тоесть загрузится
trace(rr)
delete this.onEnterFrame;
}}
stop();

Я так уже много сделал и все работает.

А почему у тебя название файла и переменной одинаковые, не запутаешься?
__________________
вообще я не флешист а как вы поняли 3д-шник ;) но работа требует :(

Старый 08.09.2005, 16:30
7thsky™ вне форума Посмотреть профиль Отправить личное сообщение для 7thsky™ Найти все сообщения от 7thsky™
  № 7  
Ответить с цитированием
7thsky™
Flash Aксакал
 
Аватар для 7thsky™

Регистрация: Jun 2005
Сообщений: 636
Смысл в том:

* Флэш timeline based, то есть привязка исполняемого сейчас кода к кадру, то есть кадр не кончиться и не перейдет на другой пока не очиститься стек функций

* Ты предлогаешь что на время пока твой файл будет грузиться, все должно не двигаться и ждать окончания загрузки? Смысл?

Старый 08.09.2005, 16:31
7thsky™ вне форума Посмотреть профиль Отправить личное сообщение для 7thsky™ Найти все сообщения от 7thsky™
  № 8  
Ответить с цитированием
7thsky™
Flash Aксакал
 
Аватар для 7thsky™

Регистрация: Jun 2005
Сообщений: 636
+ вообще хелп рулит, поиск тоже рулит, там это описанно и переписанно

Старый 08.09.2005, 16:54
beginnerflasher2005 вне форума Посмотреть профиль Отправить личное сообщение для beginnerflasher2005 Найти все сообщения от beginnerflasher2005
  № 9  
Ответить с цитированием
beginnerflasher2005

Регистрация: Aug 2005
Сообщений: 12
Это все хорошо - переход на следующие кадры, стеки и т.д.
Но с другой-то стороны зачем мне нужны эти следующие кадры, когда переменная "не с тем значением".

Хорошо, вот я в справке то и посмотрел:
-"Обработчик события onData наступает при получении данных, вызванных методами loadVariables или loadMovie ". А почему же не работает вышеприведенный код с onData. Или обработчик не может выполниться пока идет код в кадре? Если так, то значит loadVariables не ждет загрузки, а обработчик ждет,

Старый 08.09.2005, 17:08
beginnerflasher2005 вне форума Посмотреть профиль Отправить личное сообщение для beginnerflasher2005 Найти все сообщения от beginnerflasher2005
  № 10  
Ответить с цитированием
beginnerflasher2005

Регистрация: Aug 2005
Сообщений: 12
Цитата:
Сообщение от 3dmax
Я так уже много сделал и все работает.

А почему у тебя название файла и переменной одинаковые, не запутаешься?
Спасибо, работает такой способ.
Не, не запутаюсь - тестовый кусочек кода.

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

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

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


 


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


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