FOK!forum / Digital Corner / [Flash AS 3.0] this.addChild geeft error 1042
Etceteravrijdag 13 november 2009 @ 21:06
Ik ben bezig met een opdracht voor school, en dat ziet er op het oog vrij simpel uit alleen kom ik er niet uit. Heb ook niet veel ervaring met AS, en dat wat ik heb heb ik van Flash 8 (compleet andere manier van scripten).

Ik heb een stage, waarop een bal moet verschijnen. Daarvoor heb ik script 1:
1
2
3
4
5
6
7
8
9
10
11
package
{
   import flash.display.MovieClip;
   
   public class Physics extends MovieClip
   {
      public function Physics()
      var ball = new Ball();
      this.addChild (Ball);
   }
}

en scrip 2:
1
2
3
4
5
6
7
8
9
10
11
12
13
package
{
   import flash.display.MovieClip;
   
   public class Ball extends MovieClip
   {
      public function Ball()
      {
         this.x=275;
         this.y=200;
   }
}
}


Maar als ik het test krijg ik dus een 1042 error:
quote:
1042: The this keyword can not be used in static methods. It can only be used in instance methods, function closures, and global code.
waar ik vanaf wil.

Ik heb het idee dat de link tussen script 1 en script 2 niet helemaal klopt, maar ik zou niet weten wat ik er aan moet veranderen
De_Hertogvrijdag 13 november 2009 @ 21:21
Je eerste code is een algemeen stukje script, dat nergens 'bij hoort'. 'This' verwijst naar het object waar het bij zou moeten horen, maar die is er dus niet. En dus snapt flash het niet meer.

Je moet die code niet in je algemene project zetten, maar bij de eigenschappen van een object. Je moet even kijken welk object precies, maar ik denk dat het bij de achtergrond moet.
Crazy Harryvrijdag 13 november 2009 @ 22:13
Sowieso kloppen je accolades ( deze tekens: {} ) niet.
Functie physics heeft er helemaal geen.
en function ball heeft geen einde.

Begin daar maar eens mee.
Etceterazaterdag 14 november 2009 @ 01:32
quote:
Op vrijdag 13 november 2009 21:21 schreef De_Hertog het volgende:
Je eerste code is een algemeen stukje script, dat nergens 'bij hoort'. 'This' verwijst naar het object waar het bij zou moeten horen, maar die is er dus niet. En dus snapt flash het niet meer.

Je moet die code niet in je algemene project zetten, maar bij de eigenschappen van een object. Je moet even kijken welk object precies, maar ik denk dat het bij de achtergrond moet.
Thanks Zal morgen eens gaan kijken
quote:
Op vrijdag 13 november 2009 22:13 schreef Crazy Harry het volgende:
Sowieso kloppen je accolades ( deze tekens: {} ) niet.
Functie physics heeft er helemaal geen.
en function ball heeft geen einde.

Begin daar maar eens mee.
Toch grappig dat ik geen foutmeldingen daarover kreeg en dat het zo in de bijbehorende opdracht staat
nVinciblezaterdag 14 november 2009 @ 09:01
as 3 vind ik een slechte uitvinding van Flash
Crazy Harryzaterdag 14 november 2009 @ 14:12
quote:
Op zaterdag 14 november 2009 01:32 schreef Etcetera het volgende:

[..]

Thanks Zal morgen eens gaan kijken
[..]

Toch grappig dat ik geen foutmeldingen daarover kreeg en dat het zo in de bijbehorende opdracht staat
Dan mag je degene die de opdracht gemaakt heeft op zn flikker geven want zo gaat het echt niet werken.
Of je hebt zelf nog niet door dat dat verbeteren bij de opdracht hoort

En over die foutmeldingen... Je krijgt toch een foutmelding, een keer raden waar het aan ligt...
Etceteradinsdag 17 november 2009 @ 22:43
* Etcetera gaat door het stof Crazy Harry, je had gelijk
Crazy Harrywoensdag 18 november 2009 @ 09:18


Mocht je meer hulp nodig hebben dan lees ik het wel hierzo