Модераторы: SoWa
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> У объекта Sound не срабатывает событие onLoad 
:(
    Опции темы
egrik
Дата 14.10.2008, 15:14 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 62
Регистрация: 10.11.2006
Где: Voronezh

Репутация: нет
Всего: 1



Добрый день, кто-нибудь объясните, плиз, на простом примере следующую ситуацию:

Код
_root.onEnterFrame = function():Void
{
    delete this.onEnterFrame;
    var t = new Sound();
    t.onLoad = function(a):Void
    {
        trace(a);
    }
    t.loadSound('data/snd/bg.mp3', false);
}



Почему в этом случае не срабаывает событие onLoad? Также удивительно то, что если мп3 файла не существует, то событие срабатывает.

Еще момент, если: будет так:

Код
var t = new Sound();
_root.onEnterFrame = function():Void
{
    delete this.onEnterFrame;
    t.onLoad = function(a):Void
    {
        trace(a);
    }
    t.loadSound('data/snd/bg.mp3', false);
}


т. е. если переменная t будет глобальной, то тоже все будет ок. Не пойму, почему так происходит. Понятно, что связано это с областью видимости, но никак не прийдет в голову, как решить проблему.

В аттаченом файле пример.

Заранее всем огромнооооое спасибо )

Присоединённый файл ( Кол-во скачиваний: 3 )
Присоединённый файл  snd.zip 6,92 Kb
PM MAIL ICQ Skype   Вверх
bars80080
Дата 14.10.2008, 15:45 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


прапор творюет
****
Награды: 1



Профиль
Группа: Завсегдатай
Сообщений: 12022
Регистрация: 5.12.2007
Где: Königsberg

Репутация: 1
Всего: 315



может я не про то, но с этим Load для звука я не сталкивался

делал так:

Код

var t = new Sound();
t.attachSound('link_na_zvuk');

t.start();

PM MAIL WWW   Вверх
egrik
Дата 14.10.2008, 16:26 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 62
Регистрация: 10.11.2006
Где: Voronezh

Репутация: нет
Всего: 1



Цитата(bars80080 @ 14.10.2008,  15:45)
может я не про то, но с этим Load для звука я не сталкивался

делал так:

Код

var t = new Sound();
t.attachSound('link_na_zvuk');

t.start();

спасибо за отклик, но проблема не в том, что я не могу загрузить звук, проблема в том, что я не понимаю, почему, если изменить область видимости, то событие onLoad для Sound не срабатывает, т. е. получается так, что необходимо, чтобы объект Sound был глобальным (судя по примеру). Или я что-то не так понял, вот и хочу этот момент усвоить и развеять все сомнения.
PM MAIL ICQ Skype   Вверх
bars80080
Дата 14.10.2008, 16:34 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


прапор творюет
****
Награды: 1



Профиль
Группа: Завсегдатай
Сообщений: 12022
Регистрация: 5.12.2007
Где: Königsberg

Репутация: 1
Всего: 315



что-то вспоминается, что когда происходит вызов метода, то он проходит по лесенке встроенные объекты->root->вложенные объекты->дальше по вложению

видимо, событие ориентировано на root, а переменная t, всё же создана внутри функции и из root не видна

собсна, больше ничего не скажу
PM MAIL WWW   Вверх
egrik
Дата 14.10.2008, 17:17 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 62
Регистрация: 10.11.2006
Где: Voronezh

Репутация: нет
Всего: 1



Цитата(bars80080 @ 14.10.2008,  16:34)
что-то вспоминается, что когда происходит вызов метода, то он проходит по лесенке встроенные объекты->root->вложенные объекты->дальше по вложению

видимо, событие ориентировано на root, а переменная t, всё же создана внутри функции и из root не видна

собсна, больше ничего не скажу

я уже пробовал делигировать выполнение функции на _root, на _global также пробовал, ничего, все по-прежнему (
PM MAIL ICQ Skype   Вверх
Solomon
Дата 21.10.2008, 16:13 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 471
Регистрация: 23.1.2006
Где: Украина Киев

Репутация: нет
Всего: 2



эээ. ну собственно ты сохраняешь все это в локальную переменную, кторая при выходе из функции(как и любая другая локальная переменная) перекращает свое существование... или я не прав??? как он может вызвать метод не существующего объекта?


--------------------
Если не идти до конца к поставленным целям и не пытатся их достигнуть, каким бы тяжелым не казался путь, то лучше и не ставь их перед собой, но тот кто не ставит перед собой труднодоступные цели, никогда не ощутит эйфорию настоящей победы... победы над миром...
Соломон 2008
PM MAIL ICQ GTalk YIM   Вверх
Solomon
Дата 21.10.2008, 16:29 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 471
Регистрация: 23.1.2006
Где: Украина Киев

Репутация: нет
Всего: 2



а в случае, когда он файл не находит.. возможно он успевает вызвать функцию, до того как удалитобьект(как вариант. точно утверждать не буду). Собственно я б от метода №1 советовал бы избавиться...

p.s. У меня на селероне 1,8 например ва варианта работают нормально... 


--------------------
Если не идти до конца к поставленным целям и не пытатся их достигнуть, каким бы тяжелым не казался путь, то лучше и не ставь их перед собой, но тот кто не ставит перед собой труднодоступные цели, никогда не ощутит эйфорию настоящей победы... победы над миром...
Соломон 2008
PM MAIL ICQ GTalk YIM   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "Flash"
AlDev
SoWa
  • Если вы хотите предложить кому-либо работу, то пишите или в личку, или оставляйте сообщения в специально предназначеном для этого форуме "Объявления о найме специалистов"
  • Один вопрос - одна тема. Не надо переходов от одного вопроса к другому.
  • Если вы хотите показать какой-нибудь ваш мульт, причём показать, а не предоставить исходник, то вам сюда
  • Вопросы по разработке интернет-приложений на Flex и вопросы по MXML пишите в раздел Flex
  • Смотрим в будущее. ActionScript 3 обсуждается в форуме ActionScript 3
  • Новости из мира Flash.
  • New! [code=ascript][/code] - подсветка ActionScript + wikipedia help

Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, AlDev, SoWa.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | ActionScript 1,2 | Следующая тема »


 




[ Время генерации скрипта: 0.0521 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.