Flash As3 erreur “Impossible d'accéder à une propriété ou une méthode d'une référence d'objet nul”
im essayant de faire une couple de base des jeux sur flash qui consistent en des nombres aléatoires, mais im recevoir ce message d'erreur à chaque fois que je lance ma scène:
TypeError: Error #1009: Cannot access a property or method of a null object reference.
at capacitacion_fla::MainTimeline/frame1()
TypeError: Error #1009: Cannot access a property or method of a null object reference.
at capacitacion_fla::MainTimeline/frame1()
at flash.display::MovieClip/gotoAndStop()
at capacitacion_fla::MainTimeline/fl_ClickToGoToAndStopAtFrame()
Je suis de l'apprentissage de flash et as3 et je vous en seront reconnaissants si quelqu'un pouvait m'aider à savoir ce qui se passe, moi aussi je vous laisse mon code as3 c'est tout placé sur l'image 1:
stop();
import com.greensock.*;
import com.greensock.easing.*;
import flash.events.MouseEvent;
import flash.display.MovieClip;
var blitMask1:BlitMask = new BlitMask(strip1,strip1.x,strip1.y,strip1.width,207,true,true,0xffffff,true);
var blitMask2:BlitMask = new BlitMask(strip2,strip2.x,strip2.y,strip2.width,207,true,true,0xffffff,true);
//------- botones ----------
numerico_btn.addEventListener(MouseEvent.CLICK, fl_ClickToGoToAndStopAtFrame);
function fl_ClickToGoToAndStopAtFrame(event:MouseEvent):void
{
gotoAndStop(1);
}
preguntas_btn.addEventListener(MouseEvent.CLICK, fl_ClickToGoToAndStopAtFrame_2);
function fl_ClickToGoToAndStopAtFrame_2(event:MouseEvent):void
{
gotoAndStop(2);
}
imagenes_btn.addEventListener(MouseEvent.CLICK, fl_ClickToGoToAndStopAtFrame_3);
function fl_ClickToGoToAndStopAtFrame_3(event:MouseEvent):void
{
gotoAndStop(3);
}
//------- Fin de los botones ----------
//------------ Escena 1 ----------------------------------------------------
spin_btn.addEventListener(MouseEvent.CLICK, spin);
function spin(event:MouseEvent):void {
var i:int = 1;
while (i <= 2) {
var newNumber:Number = (randomNumber(0, 19) * 207) + 4968;
TweenMax.to(this["strip" +i], 2 + (i*.5), {y:strip1.y + newNumber});
i++;
}
}
function randomNumber(min:Number, max:Number):Number {
//good
return Math.floor(Math.random() * (1 + max - min) + min);
}
//----------- fin escena 1 ----------
//----------- Principio escena 2 -------------------
var blitMask3:BlitMask = new BlitMask( strip1q, strip1q.x, strip1q.y, 392 , strip1q.height, true, true, 0xffff00, true);
preguntas_btn.addEventListener(MouseEvent.CLICK, rodarPreguntas);
function rodarPreguntas(event:MouseEvent):void {
preguntas_btn.visible = false;
var newNumber1:Number = (randomNumber1(0, 50)*392) + 21168 ;
//tween to the relative value of newNumber
TweenMax.to(strip1q, 4, {x:String(-newNumber1), onComplete:showBtn});
}
function showBtn(){
preguntas_btn.visible = true;
}
function randomNumber1(min:Number, max:Number):Number {
//good
return Math.floor(Math.random() * (1 + max - min) + min);
}
//------- Fin escena 2 --------
J'espère que quelqu'un peut m'aider à comprendre cela!
- Prendre un coup d'oeil un les questions connexes du droit d'obtenir une compréhension de votre problème. Cette même question se demander au moins deux fois par semaine. Si vous rencontrez toujours des difficultés après avoir lu les autres réponses, essayez de mettre à jour votre question afin de montrer ce que vous avez donné un essai.
- Marty Wallace est juste: c'est un très problème standard et il peut y avoir beaucoup d'occurrences dans le code qui crée.
- Vérifiez vos images-clés (1, 2, 3) sauts. Vérifier si l'objet est présent sur ces images.
Vous devez vous connecter pour publier un commentaire.
Erreur 1009 est vous dire qu'il ne peut pas faire référence à un bouton, Clip, champ de Texte, etc. Une réponse simple pour vous serait de faire en sorte que vos boutons ont les noms d'instance. J'imagine que vous êtes en utilisant CS6 ou une ancienne version de Flash. Dans ce cas, sélectionnez un bouton, comme numerico_btn lorsque vous êtes sur scène. Ensuite, allez au panneau de propriétés et en l'occurrence de champ de saisie de mettre le nom de numerico_btn.
Le faire pour l'ensemble de vos boutons. Enfin, déclarer ces boutons. Par exemple:
var numerico_btn:SimpleButton;
Qui devrait résoudre votre erreur. Tout comme une outre, assurez-vous que votre bouton est activé en ajoutant numerico_btn.enabled = true; avant de votre écouteur d'événement.
Espère que vous aide, vous et personne d'autre qui s'exécute dans cette commune, début des problèmes.