PDA

Volledige versie bekijken : probleem met x en y


Jitze.Pieter
%Europe/Berlin %909 %2009, 21:49
Oke het blijkt wel dat ik er geen snars van AS3 snap.

Ik heb een ovaal object dat ik vanuit de library op de stage plaats dat gaat helemaal goed.

Nu probeer ik de x en y te veranderen om het object de juiste positie te geven en krijg ik fourmeldingen:

1202: Access of undefined property x in package goos.

Ik snap niet waarom hij de x en y niet kent hij kan hem wel plaatsen op de stage.

code:

package
{
import flash.display.MovieClip;
import flash.events.Event;
import flash.events.MouseEvent;

import stick.Stok;
import goos.Goos;

public class MoveStick extends MovieClip
{
public var stok:Stok = new Stok();
public var goos:Goos = new Goos();

public function MoveStick()
{
stok.y = 150;

goos.x = 235;
goos.y = 205;

addChild(goos);
addChild(stok);

stage.addEventListener(MouseEvent.MOUSE_MOVE, mouseMoveHandler);
}

private function mouseMoveHandler(event:MouseEvent):void
{
stok.moveStok(event);
}
}
}


goos class:


package goos
{
import flash.display.MovieClip;

public class Goos extends MovieClip
{
public function Goos()
{

}
}
}


Ik zie het probleem niet kan iemand het aanwijzen?

Thanks

Jan
%Europe/Berlin %963 %2009, 23:07
Beetje gekke of onverwachte error maar volgens mij denkt Flash dat je met goos in goos.x = 235; niet je variabele goos bedoelt maar de package goos.
Gebruik een andere naam voor je variabele of zet er this voor: this.goos.x=235

Groeten;
Jan

Jitze.Pieter
%Europe/Berlin %425 %2009, 10:12
He bedankt adnez dat zou wel kunnen maar ik had toevallig al geprobeerd om er this voor te zetten maar dan krijg ik ook een foutmelding maar zal nog even proberen om er een andere naam van te maken.

Jitze.Pieter
%Europe/Berlin %433 %2009, 10:24
Ik heb nu de var een andere naam gegeven en dat helpt inderdaad, dus weer wat geleerd let op mijn naamgeving.

Thanks

jaspermuts
%Europe/Berlin %438 %2009, 10:31
Het makkelijkste is wat meestal zo is en denk ik ook wel standaard is:
packagenames zijn in meervoud, classnames niet, net zoals de flash.events package. De flash.display package heeft dat weer niet, omdat het geen displays zijn, maar een categorie waaronder alles valt, maar ik zou het zolang het wel kan dus zo doen.

Ik zou nu een voorbeeld willen geven met je goos, maar ik weet niet wat een goos is...Bedoel je een goose (gans)? Dan wordt het dus geese.Goose of animals.Goose oid
of weapons.Stick en weapons.Goose (ik weet echt niet wat het zijn, maar dat ziets zou ik doen... Een package met maar 1 class is een beetje onzin.

Jitze.Pieter
%Europe/Berlin %445 %2009, 10:41
Bedankt jaspermuts, ik had ze eerst ook niet in een package maar als ik alle files in de zelfde map had staan kon ik de goos(gans) niet benaderen. Volgens mij is het zo als bestanden in de zelfde werkmap zitten hoef je ze niet te importeren, daarom heb ik ze in een package gedaan en zo geimporteerd zodat ik die foutmelding niet meer kreeg.

Bedankt voor de tips.

Groet,

Jitze