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

OOP Movieclip Problem [Flash 9]

 


AntwortenRegistrieren Seite1  

Xenn#1
Benutzerbild von Xenn
Beiträge: 8
Registriert: Dec 2009

21.04.2010, 14:14

hallo,

erstmal zum versuch:

ich versuche mit einer classe durch einen button click, ein movieclip kasten zu erstellen.
position= random, größe=20x20.

der onframe code (weiß nicht wie ichs sonst nennen soll xD):

ActionScript:
1
2
3
4
5
6
7
8
9
10
11
import classs.*;

var block:blockFunktion=new blockFunktion();

_button.addEventListener(MouseEvent.CLICK, _click);

function _click(e:Event){

   block.createBlock(Math.random()*550-10,Math.random()*400-10);
   
}


hier die classe:

ActionScript:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
package{
   
   import flash.display.*;
      
   public class blockFunktion{
      
      function createBlock(aa:Number, bb:Number){
         
         var mc:MovieClip;
         
         mc=new MovieClip;
         mc.graphics.beginFill(0xffffff);
         mc.graphics.drawRect(aa,bb,20,20);
         mc.graphics.endFill();
         
         addChild(mc);
            
      }
      
   }
   
}


ich vermute ja das man keine classen in classen einsetzen kann (da movieclip ja auch ne classe ist oder  nicht?)

hoffe mir kann da jemand helfen, hier noch der fehler code:

1046: Type was not found or was not a compile-time constant: blockFunktion.  var block:blockFunktion=new blockFunktion();
1180: Call to a possibly undefined method blockFunktion.  var block:blockFunktion=new blockFunktion();
Schlagwörter: classe, OOP
Geändert von Xenn am 21.04.10 um 15:01 Uhr
candiru#2
Benutzerbild von candiru
Beiträge: 190
Registriert: May 2007

22.04.2010, 11:10

hallo,
bei der klasse fehlt der konstruktor
public function blockFunktion (){}

wenn man funktionen innerhalb der klasse nicht weiter kennzeichnet, sind sie glaube ich private

nebenbei schreibt man klassennamen in der regel groß, also 'BlockFunktion'
Xenn#3
Benutzerbild von Xenn
Beiträge: 8
Registriert: Dec 2009

Themenautor/in

23.04.2010, 14:12

selbst mit dem constructor funktionierts nicht

inzwischen kommt auch schon ne andere fehler meldung:


1180: Call to a possibly undefined method addChild. addChild(mc);

hier die bearbeitete classe:

ActionScript:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
package classs{
   
    import flash.display.*;
       
    public class blockFunktion{
       
        public function createBlock(aa:Number, bb:Number){
           
            var mc:MovieClip;
           
            mc=null;
            mc=new MovieClip;
            mc.graphics.beginFill(0xffffff);
            mc.graphics.drawRect(aa,bb,20,20);
            mc.graphics.endFill();
           
            addChild(mc);
            return;
               
        }
       
    }
   
}
candiru#4
Benutzerbild von candiru
Beiträge: 190
Registriert: May 2007

23.04.2010, 15:52

und so?
ActionScript:
1public class blockFunktion extends Sprite
Xenn#5
Benutzerbild von Xenn
Beiträge: 8
Registriert: Dec 2009

Themenautor/in

23.04.2010, 19:28

boa endlich xD
hhaha und mir wurde noch gesagt das dies nicht gänge!! HJAHA :D:D:D

vielen dank!! :D
das hat mich um einiges weiter gebracht^^

hier für alle die den code mal sehen wollen (kenne das selber gut :P):

.fla datei:

ActionScript:
1
2
3
4
5
6
7
8
9
10
11
12
import classs.*;

var block:blockFunktion=new blockFunktion();

_button.addEventListener(MouseEvent.CLICK, _click);

function _click(e:Event){

   block.createBlock(Math.random()*550-10,Math.random()*400-10);
   addChild(block);
   
}



class:

ActionScript:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
package classs{
   
   import flash.display.*;
      
   public class blockFunktion extends MovieClip{
      
      public function createBlock(aa:Number, bb:Number){
         
         var mc:MovieClip;
         
         mc=null;
         mc=new MovieClip;
         mc.graphics.beginFill(0xffffff);
         mc.graphics.drawRect(aa,bb,20,20);
         mc.graphics.endFill();
         
         addChild(mc);
         return;
            
      }
      
   }
   
}

AntwortenRegistrieren Seite1  

Schnellantwort

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

 
Ähnliche Beiträge zum Thema
Partner Webseiten: art-and-law.de  Mediengestalter.info   phpwelt.de   Scubacube.de  
Haftungsausschluss   Datenschutzerklärung   Impressum
© 1999-2024 Sebastian Wichmann - Flashhilfe.de