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

Вернуться   Форум Flasher.ru > Flash > ActionScript 3.0

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

Регистрация: Oct 2010
Сообщений: 36
По умолчанию При компиляции ошибки нет, а при открытии swf - есть

Добрый день,

Подскажите, почему такое может происходить. Если откомпилировать проект, то работает без ошибок(прелоадер отработал - кликаем - попадаем в меню), а если открыть готовый свф, то после клика появляется ошибка - Parameter child must be non-null, ругается на меню. Почему такая выборочность? Какие вообще ошибки не определяются при компиляции, но могут всплыть в готовых свф?

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

Регистрация: Oct 2010
Сообщений: 1,049
Отправить сообщение для bav с помощью ICQ
Покажите каким образом и где вы добавляете (или удаляете) меню.

Старый 10.12.2010, 14:52
o_oxana вне форума Посмотреть профиль Отправить личное сообщение для o_oxana Найти все сообщения от o_oxana
  № 3  
Ответить с цитированием
o_oxana

Регистрация: Oct 2010
Сообщений: 36
в сцене 3 кадра. первый кадр - stop(), добавляем прелоадер, когда догрузился, добавляем на него слушатель события click, который вызывает функцию show_menu:
Код:
    gotoAndStop(3);
    addChild(menu_mc);
в третьем кадре прописано
Код:
stop();
CMain_ini();
где в CMain_ini создаются все нужные мувиклипы, в том числе
Код:
menu_mc = new CScrMenu();

Старый 10.12.2010, 15:05
bav вне форума Посмотреть профиль Отправить личное сообщение для bav Найти все сообщения от bav
  № 4  
Ответить с цитированием
bav
 
Аватар для bav

Регистрация: Oct 2010
Сообщений: 1,049
Отправить сообщение для bav с помощью ICQ
В функции show_menu() прежде чем перейти на третий кадр выполняется функция addChild(), аргумент которой в этот момент еще не определен. Попробуйте добавлять menu_mc уже в третьем кадре, после его создания в функции CMain_ini().

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

Регистрация: Oct 2010
Сообщений: 36
почему тогда при запуске от компиляции никакой ошибки не получается? а только при открытии готового свф? сделала по-другому - при клике на прелоадер вызывается
Код:
gotoAndStop(3);
а в самом кадре
Код:
stop();
CMain_ini();
show_menu();
- тут уж точно успеет создаться menu_mc...
в show_menu осталось только addChild(menu_mc).
точно так же - ошибка только в свф.
Допустим, есть какая-то ошибка, которая глубже закралась и нужно код перелопачивать. Это уже вряд ли кто-то из вне мне поможет. Скажите тогда, в каких случаях вообще могут возникать ошибки в свф и не возникать при запуске через ctrl+Enter?

Старый 10.12.2010, 15:29
leofit вне форума Посмотреть профиль Отправить личное сообщение для leofit Найти все сообщения от leofit
  № 6  
Ответить с цитированием
leofit
 
Аватар для leofit

Регистрация: Dec 2009
Сообщений: 428
Политики безопасности разные.. А вообще поставьте себе debug плеер и сами увидите ошибку
__________________
Скажи мне кто твой друг и я скажу тебе кто твой друг


Последний раз редактировалось leofit; 10.12.2010 в 15:33.
Старый 10.12.2010, 15:31
TanaTiX вне форума Посмотреть профиль Отправить личное сообщение для TanaTiX Найти все сообщения от TanaTiX
  № 7  
Ответить с цитированием
TanaTiX
 
Аватар для TanaTiX

блогер
Регистрация: Feb 2008
Сообщений: 1,453
Записей в блоге: 4
не надо писать в кадрах
выборочность зависит от того, когда что флеш "успевает" сделать
При компиляции - успевает, если выложить на сайт - не успевает, т.е. объект на который ссылается код не успевает проинициализироваться. Примерно так.
__________________
Ну все, теперь Забава м-о-я.
Гы-гы, а корабль мой!

Старый 10.12.2010, 15:55
ZergMaster вне форума Посмотреть профиль Отправить личное сообщение для ZergMaster Найти все сообщения от ZergMaster
  № 8  
Ответить с цитированием
ZergMaster
 
Аватар для ZergMaster

Регистрация: May 2008
Адрес: Питер
Сообщений: 385
Отправить сообщение для ZergMaster с помощью ICQ Отправить сообщение для ZergMaster с помощью Skype™
+1 - не надо писать в кадрах.
забудьте про кодинг, основанный на переходе с кадра на кадр! Это вызывает массу глюков! Это можно делать только в самых простых случаях, для создания красивых кнопочек например. )
Гораздо безопаснее основывать проект на добавлении/удалении нужных мувиков при помощи addChildAt(MovieClip, index), благодаря которому можно распихивать их по уровням и располагать на сцене так, как требуется (тоже самое, что слои).
__________________
while(live()) { hope(); }

Старый 10.12.2010, 17:42
o_oxana вне форума Посмотреть профиль Отправить личное сообщение для o_oxana Найти все сообщения от o_oxana
  № 9  
Ответить с цитированием
o_oxana

Регистрация: Oct 2010
Сообщений: 36
Спасибо, в следующий раз буду умнее))

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

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

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


 


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


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