Avatar billede flashnet Nybegynder
29. november 2009 - 02:39 Der er 1 kommentar og
1 løsning

Arbejde med flere MovieClips?

Jeg sidder med en kode hvor jeg skal arbejde met ét library object flere gange. I stedet for at sige

var uArrow1:MovieClip = new u_arrow();
var uArrow2:MovieClip = new u_arrow();

Dette virker, men jeg vil lave en løkke som laver flere movieclips, som jeg så kan bruge "addChild" til at tilføje når jeg skal bruge dem efterhånden:

for (var j:uint; j<100; j++){
    var uArrow:MovieClip  = new u_arrow();
    uArrow.name = "uArrow"+j;
    trace("uArrow"+j)
    }
addChild(uArrow1);

Tracen virker, og jeg får en liste, men addChild virker dog ikke, lidt hjælp til at få det til at virke?

Den siger:

uArrow0
TypeError: Error #1034: Type Coercion failed: cannot convert "[object u_arrow]0" to flash.display.DisplayObject.
    at Untitled_fla::MainTimeline/frame1()
Avatar billede hmanback Nybegynder
29. november 2009 - 13:26 #1
Du kan ikke referere til et mc på den måde: addChild(uArrow1);

Du bliver nødt til at tilføje dine mc til et array.
I eksemplet her er der et MovieClip i Library der hedder Circle. I Circle propertise(i Library) er "Linkage" sat til "Export for ActionScript" og "Export in frame 1" er også hakket af.

//array for movie clips Cirlce
var circles_arr:Array = new Array();

for (var j:uint = 0; j<10; j++){
    var myCircle_mc:MovieClip  = new Circle();
    myCircle_mc.name = "circle_mc_"+j;   
    //add mc to array
    circles_arr.push(myCircle_mc);   
}

trace("circles array: " + circles_arr); //traces [object Circle] for each mc in the array
trace(circles_arr[4].name); //traces circle_mc_4
addChild(circles_arr[4]);  //add to stage
trace(getChildByName("circle_mc_4")); //traces [object Circle]
Avatar billede flashnet Nybegynder
29. november 2009 - 16:23 #2
Det virker, tak for det :)
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
IT-kurser om Microsoft 365, sikkerhed, personlig vækst, udvikling, digital markedsføring, grafisk design, SAP og forretningsanalyse.

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester