Информация

Обсуждало 5 человек

Ошибка

Логика и программирование
29 июля 2011 в 21:03:43

Я не могу понять, где ошибка:
import flash.events.MouseEvent; stop(); replaybtn.addEventListener(MouseEvent.CLICK, playa); function playa(event:MouseEvent):void { this.gotoAndPlay(1, "Scene 2"); }

Выдается следующая ошибка:
TypeError: Error #1009: Не удается вызвать свойство или метод со ссылкой на объект "null".

Но ведь здесь все правильно прописано:
function playa(event:MouseEvent):void

Заранее спасибо.

Обсуждение (вниз)

Не хватает только вашего мнения. Зарегистрируйтесь, чтобы написать!

30 июля 2011 в 10:43:03

Да глюк, потому что у меня код работает

29 июля 2011 в 22:10:32

Да это, наверное, просто флеш глюкнул.

29 июля 2011 в 22:05:19

И в чем был косяк? Первоначальный код, вроде, рабочий.

29 июля 2011 в 21:54:26

Hell yeah! Все заработало! Всем спасибо.

29 июля 2011 в 21:50:53

Даже Code Snippets не помог. Надо просто удалить эту кнопку и заново ее вставить.

29 июля 2011 в 21:49:10

Попробую через Code Snipsets

29 июля 2011 в 21:40:23

вот... как я и предполагал )... решай %)

29 июля 2011 в 21:39:07

null function Function() {}
null function Function() {}
---
Почему-то он никак не хочет видеть replaybtn.

29 июля 2011 в 21:38:01

ок)

29 июля 2011 в 21:37:19

Щас попробую с trace(replaybtn, playa);

29 июля 2011 в 21:36:33

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

something = 10; var something:int;


так что не в этом проблемы)... я склоняюсь к тому, что оно твою кнопку не видит )

29 июля 2011 в 21:36:03

Безрезультатно.

29 июля 2011 в 21:34:51

вот, значит двигаемся дальше, теперь вместо всех trace'ов после stop напиши:
trace(replaybtn, playa);


на каком будет null, с тем и проблемы ;)

29 июля 2011 в 21:34:21

Думаю playa поставить перед addEventListener

29 июля 2011 в 21:33:51

Выдал только единицу. Значит, что-то с addEventListener'ом.

29 июля 2011 в 21:29:24

напиши в коде так:

import flash.events.MouseEvent; stop(); trace(1); replaybtn.addEventListener(MouseEvent.CLICK, playa); trace(2); function playa(event:MouseEvent):void { trace(3); gotoAndPlay(1, "Scene 2"); trace(4); }


и посмотри, с какого места не выводится значения

29 июля 2011 в 21:24:05

импортируй класс симплбатон

29 июля 2011 в 21:21:39

Перепроверял. Даже копировал из поля Instance name.

29 июля 2011 в 21:17:56

replaybtn может на нее ругается, мог уу не найти, перепроверь имена

29 июля 2011 в 21:16:42

import flash.events.MouseEvent; stop(); replaybtn.addEventListener(MouseEvent.CLICK, playa); function playa(event:MouseEvent):void { event.currentTarget.gotoAndPlay("start");//я назвал 1-ый фрейм в сцене Scene 2 "start" }

Ошибка та же. Ничего не меняется.

29 июля 2011 в 21:11:05

event.currentTarget.gotoAndPlay(1, "Scene 2");
Fundux.ru v.3.0 © 2006-2021 AleXNoD
Портал русских флеш игр и flash мультов