{lang: 'de'}
Flashhilfe.de - Flash Community

OOP, addChild und Objekte die nicht auftauchen [Flash 11]

 


AntwortenRegistrieren Seite1  

fe.a.ernst#1
Benutzerbild von fe.a.ernst
Beiträge: 2
Registriert: May 2012

04.05.2012, 23:11

Hi,
ich bin Actionscript-Neuling, kenne mich allerdings recht gut mit Java aus.
Ich versuche mich gerade daran ein paar Boxen objektorientiert erscheinen zu lassen und habe dafür außer der Main-Class eine Level-Class erstellt die mehrere Objekte der Wall-Class erzeugt. Leider schaffe ich es nicht die Objekte der Wall-Class auf dem Bidlschirm erscheinen zu lassen, eine Fehlermeldung kommt leider auch nicht zustande. Könnt ihr mir helfen den Fehler zu finden?

Hier die Wall-Class die das Rechteck erstellt, dass angezeigt werden soll:
ActionScript:
1
2
3
4
5
6
7
8
9
10
11
12
13
public class Wall extends Sprite
   {
        public var mywidth:Number;
        public var myheight:Number;
        
        public function Wall( x:Number, y:Number, mywidth:Number, myheight:Number)
        {
           graphics.beginFill(0x3399ff);
           graphics.drawRect( x, y, width, height);
           graphics.endFill();
        }
        
     }


Hier die Level1-Class die ein Wall-Objekt erzeugt:
ActionScript:
1
2
3
4
5
6
7
8
9
10
public class Level1 extends Level
   {
        public function Level1 ( container:UIComponent )
        {
           walls = new Array();
           var newWall:Wall = new Wall( 100, 100, 30, 30 );
           walls.push( newWall );
           container.addChild( newWall );
        }   
     }


und hier die Main-Class, die wiederum ein Level1-Objekt erzeugt:
ActionScript:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
public function Main():void {
           if (stage) init();
           else addEventListener(Event.ADDED_TO_STAGE, init);
           
           // container ( IVisualElement ) for DisplayObjects
         container = new UIComponent();
           addChild( container );
           
           // Hier wird ein Objekt erzeugt, das allerdings korrekt angezeigt wird.
         indiena = new Indiena();
           addChild(indiena);
           level = new Level1( container );
           
           var newWall:Wall = new Wall( 100, 100, 30, 30 );
           addChild(newWall);


Vielen Dank schonmal, wenn sich jemand die Mühe macht, meinen Code zu checken.
Schlagwörter: addChild, OOP
domzom#2
Benutzerbild von domzom
Beiträge: 40
Registriert: Oct 2008

04.05.2012, 23:52

Moin moin,
und willkommen im Forum.

Schau dir bitte Zeile 7 an:
ActionScript:
1graphics.drawRect( x, y, width, height);


Das sollte, glaube ich, eher so dort stehen:
ActionScript:
1graphics.drawRect( x, y, mywidth, myheight);
fe.a.ernst#3
Benutzerbild von fe.a.ernst
Beiträge: 2
Registriert: May 2012

Themenautor/in

05.05.2012, 00:13

Ja, natürlich. Vielen Dank, das wars.
Auf die einfachsten Dinge kommt man zum Schluss. oder gar nicht.

AntwortenRegistrieren Seite1  

Schnellantwort

Du musst registriert sein, um diese Funktion nutzen zu können.

 
Ähnliche Beiträge zum Thema
Ein Lob an die Admins [Flash CS5] 08.05.2022 - Indy_Crossover
Partner Webseiten: art-and-law.de  Mediengestalter.info   phpwelt.de   Scubacube.de  
Haftungsausschluss   Datenschutzerklärung   Impressum
© 1999-2024 Sebastian Wichmann - Flashhilfe.de