Avatar billede num256 Nybegynder
17. maj 2006 - 14:17 Der er 3 kommentarer

kalde en function fra en array

Hej boys, jeg skal til at kalde en function på _level0 fra en array, men kan ikke få den til at lade være med at være en :String
Er der nogen løsninger på dette.
Simplificeret problem nedunder:

movieArray = new Array[[]]();
function SendToMovieLoader(progressMovieInstance:MovieClip, movieUrl:String, movieTargetInstance:MovieClip, movieDescription:String, movieInitFunction) {
    movieArray.push([progressMovieInstance, movieUrl, movieTargetInstance, movieDescription, movieInitFunction]);
}
SendToMovieLoader(mainPreloader, "BG_Bush.swf", bush_mc, swfToLoad, "initHello()");
//trace(movieArray[0][4])
//
//Her er my missing part, hvordan aktiverer jeg functionen
movieArray[0][4]
//
//
initHello = function(){
    trace("initHello function is working")
    }
Avatar billede barklund Nybegynder
17. maj 2006 - 14:28 #1
Hvorfor dog have en streng med en funktion :) Brug funktionen:

movieArray = new Array[[]]();
function SendToMovieLoader(progressMovieInstance:MovieClip, movieUrl:String, movieTargetInstance:MovieClip, movieDescription:String, movieInitFunction:Function) {
    movieArray.push([progressMovieInstance, movieUrl, movieTargetInstance, movieDescription, movieInitFunction]);
}
SendToMovieLoader(mainPreloader, "BG_Bush.swf", bush_mc, swfToLoad, initHello);
//trace(movieArray[0][4])
//
//Her er my missing part, hvordan aktiverer jeg functionen - du kalder den bare :)
movieArray[0][4]();
//
//
initHello = function(){
    trace("initHello function is working")
}

Dog blander du AS2 syntaks ind i AS1-opbygning. Så du kan bare droppe fasttypningen af argumenterne til SendToMovieLoader, for de kan ikke rigtig bruges til noget - når de kun er her og ikke på alle andre variabler. Og brug af Object hænger heller ikke så godt sammen med AS2 :)

--
Morten Barklund
Avatar billede num256 Nybegynder
17. maj 2006 - 14:47 #2
Takk for hurtigt svar, vill ønske at jeg kunne lære mere af dig, ved godt jeg blander as1 og as2 sammen, men.. når jeg copy paster din code ind så skulle den give en trace fra initHello functionen, men det gører den ikke, Hvad kan det skyldes???
mvh
jon
Avatar billede barklund Nybegynder
17. maj 2006 - 15:02 #3
Du skal nok lige definere initHello ovenover at du bruger den :)
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