2012-06-22 3 views
-1

Я пытаюсь создать веб-приложение с несколькими сценами, появляется ошибка при попытке доступа к следующей сцене с созданной мной кнопкой, которая содержит несколько EventListeners для анимации.AS3 TypeError: Ошибка # 1009

Кнопка привела меня к следующей сцене, но ошибка все еще происходит. После отслеживания и отладки ошибка возникает в событии Mouse_Out.

Я все еще очень новичок в AS3, так что кто-то может объяснить мне, где мой код поступил неправильно и, если возможно, исправить ошибку для меня или есть лучший способ написать код? Заранее спасибо.

Участвуйте Ошибка:

TypeError: Error #1009: Cannot access a property or method of a null object reference. 
at fl.transitions::Tween/setPosition() 
at fl.transitions::Tween/set position() 
at fl.transitions::Tween() 
at Portfolio_fla::MainTimeline/about_btnOut() 

Мой код:

import flash.events.MouseEvent; 
import fl.transitions.Tween; 
import fl.transitions.easing.*; 
import fl.transitions.TweenEvent; 

about_btn.buttonMode = true; 
about_btn.mouseChildren = false; 
about_btn.alpha = 0.3; 
about_btn.addEventListener(MouseEvent.MOUSE_OVER, about_btnOver); 
function about_btnOver(event:MouseEvent):void 
{ 
    var AboutAlphaOver:Tween = new Tween(about_btn,"alpha",Regular.easeIn,0.3,1,0.1,true); 
} 
about_btn.addEventListener(MouseEvent.MOUSE_OUT, about_btnOut); 
function about_btnOut(event:MouseEvent):void 
{ 
    var AboutAlphaOut:Tween = new Tween(about_btn,"alpha",Regular.easeIn,1,0.3,0.1,true); 
} 
about_btn.addEventListener(MouseEvent.CLICK, about_btnClick); 
function about_btnClick(event:MouseEvent):void 
{ 
    gotoAndPlay(1,"About"); 
} 

ответ

0

Попробуйте изменить код твин:

var AboutAlphaOut:Tween = new Tween(about_btn,"alpha",Regular.easeIn,1,0.3,0.1,true); 

To:

var AboutAlphaOut:Tween = new Tween(event.currentTarget,"alpha",Regular.easeIn,1,0.3,0.1,true); 

Я не уверен, что это сработает (я не слишком знаком с Flash IDE), но я думаю, что возможно, что вы получаете ошибку, потому что в другой сцене нет ссылки на кнопку. С event.currentTarget вы будете искать ссылку в случае, поэтому она должна найти ее в любом случае.

BTW: Вы не должны называть свои переменные, начиная с прописной буквы. Таким образом, вы легко сможете отличить объекты от классов.

+0

Спасибо за быстрый ответ, он полностью работает. –

Смежные вопросы