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

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

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

Регистрация: Jan 2008
Адрес: Украина, Славутич
Сообщений: 646
Отправить сообщение для willis83 с помощью ICQ
The bomb! Конфликт функции от события

Пару часов назад я задавал вопрос по исполнению кода в мувике с одним кадром, ответ дали исперпывающий и вот по ходу дела возник новый вопрос. В главной сцене есть несколько мувиков в которых по одному кадру, код в этих кадрах исполняется по событи onEnterFrame.
Но возникает ошибка т.к. в нескольких мувиках вызывается эта функция. Как я думаю ошибка заключается в том что из нескольких мест вызывается функция без имени onEnterFrame=function().....

Вопрос в том, как можно отличить эти функции друг от друга. Пытался прописать их ранее, а потом на событии вызывать функции по имени Пример:
Код:
function func1 {
..... some code..... };
onEnterFrame=func1();
Но данный код, хоть и не вызывает ошибки, результатов не приносит, подскажите в чём проблема.

Старый 23.04.2008, 20:47
iNils вне форума Посмотреть профиль Отправить личное сообщение для iNils Посетить домашнюю страницу iNils Найти все сообщения от iNils
  № 2  
Ответить с цитированием
iNils
Негуру
 
Аватар для iNils

администратор
Регистрация: Jan 2000
Адрес: Кёнигсберг in Moscow
Сообщений: 21,879
Записей в блоге: 7
func1 - это ссылка на функцию
func1() - это вызов функции
Написав
Код:
onEnterFrame=func1();
Вы вместо ссылки на функцию, которую должен будет вызвать onEnterFrame, присвоили ему значение которое получено в результате выполнения этой функции.
__________________
(и)Нильс.ru | Плагины для FlashDevelop

Старый 23.04.2008, 20:50
willis83 вне форума Посмотреть профиль Отправить личное сообщение для willis83 Найти все сообщения от willis83
  № 3  
Ответить с цитированием
willis83
 
Аватар для willis83

Регистрация: Jan 2008
Адрес: Украина, Славутич
Сообщений: 646
Отправить сообщение для willis83 с помощью ICQ
Всё понял, убрав "()" всё заработало. Огромное спасибо.

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

Регистрация: Jan 2008
Адрес: Украина, Славутич
Сообщений: 646
Отправить сообщение для willis83 с помощью ICQ
Вообще интересная картина. Вышеописанную проблему я устранил, но тут из-за угла выпругнула новая: 2 этих мувика находятся на 2ух разных слоях главной сцены, и теперь работает мувик который находится на нижнем слою. Как только я их меняю местами, начинает работать предыдущий, а верхний не работает....

Старый 23.04.2008, 21:19
iNils вне форума Посмотреть профиль Отправить личное сообщение для iNils Посетить домашнюю страницу iNils Найти все сообщения от iNils
  № 5  
Ответить с цитированием
iNils
Негуру
 
Аватар для iNils

администратор
Регистрация: Jan 2000
Адрес: Кёнигсберг in Moscow
Сообщений: 21,879
Записей в блоге: 7
Не очень понял о чем вы, но ситуаця похожа на ту, когда два клипа имеют одинаковые имена.
__________________
(и)Нильс.ru | Плагины для FlashDevelop

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

Регистрация: Jan 2008
Адрес: Украина, Славутич
Сообщений: 646
Отправить сообщение для willis83 с помощью ICQ
Постараюсь описать проблему потребней... но всё же в кратце.
В главной сцене есть 2 слоя, в каждом слое по одному клипу. В каждом клипе по одному кадру, со следующим кодом:
Код:
function func1() {
text1 += 5 };
_root.createTextField(text1,1,0,0,5,5)
// прописываются параметры текста
onEnterFrame=func1;
Вот второй мувик на втором слое:

Код:
function func2() {
text2 += 5 };
_root.createTextField(text2,2,0,0,5,5)
// прописываются параметры текста
onEnterFrame=func2;

Опять же возникает кофликт, но уже похоже в depths, хотя их задаю разные. Посмотрите, может подскажите что не так.
P.S. Ко мне вполне можно обращаться на "ты", к тому же тут вы мне указываете что делать

function func2() {
text2 += 5 }; тут имелось ввиду text2._x += 5

P.S. конечно весь код вообщем-то условный, просто передал суть


Последний раз редактировалось iNils; 23.04.2008 в 21:45.
Старый 23.04.2008, 21:43
iNils вне форума Посмотреть профиль Отправить личное сообщение для iNils Посетить домашнюю страницу iNils Найти все сообщения от iNils
  № 7  
Ответить с цитированием
iNils
Негуру
 
Аватар для iNils

администратор
Регистрация: Jan 2000
Адрес: Кёнигсберг in Moscow
Сообщений: 21,879
Записей в блоге: 7
В методе createTextField, первый аргумент - строка.

PS. На ты я общаюся только с теми, кто тут давно, а с остальными на вы, так как не все любят когда им тыкают. А запомнить исключение сложно - людей слишком много.

PPS. Когда хотите что-то добавить, используйте кнопку и редактируйте последнее сообщение, а не создавайте несколько сообщений подряд.
__________________
(и)Нильс.ru | Плагины для FlashDevelop

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

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

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


 


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


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