Avatar billede flashnoob Nybegynder
17. oktober 2004 - 15:55 Der er 8 kommentarer og
1 løsning

Kalde en funktion fra et mc inde i et mc

Hejsa.
Jeg er ved at blive tosset på det her!
Nårh, men... Jeg har et movieclip der er skjult når filen loades. Når man klikker på en knap så afspilles mc'et, således at det kommer til syne. Det gør jeg således:

mc_rund.onRelease = function(){
mc_kassemuskler.gotoAndPlay("muskler");
}

For at "lukke" mc'et igen har jeg så lagt et mc der hedder mc_luktxt inde i mc'et.
Så vil jeg jo mene at man bare skriver

mc_kassemuskler.mc_luktxt.onRelease = function(){
mc_kassemuskler.gotoAndPlay("start");
}

Men det hjælper ikke! Det virker dog hvis jeg sætter mc_luktxt på stagen og tilpasser funktionen.
Hjælp...
Avatar billede thulstrup Nybegynder
17. oktober 2004 - 16:11 #1
Den går gal med dine stier...

Når du skriver:
mc_kassemuskler.mc_luktxt.onRelease = function(){
  mc_kassemuskler.gotoAndPlay("start");
}

Beder du jo mc_kassemuskler.mc_luktxt.mc_kassemuskler om at gotoAndPlay("start").

Du skal jo istedet "en tak tilbage", altså:
mc_kassemuskler.mc_luktxt.onRelease = function(){
  this._parent.gotoAndPlay("start");
}
Avatar billede flashnoob Nybegynder
17. oktober 2004 - 16:24 #2
Jeg kan godt se hvad du mener, men de virker ikke.
Hvis jeg placerer mc_luktxt ude på stagen og ændrer funtionen til:

mc_luktxt.onRelease = function(){
mc_kassemuskler.gotoAndPlay("start");
}
-så virker det fint...!? men det skal jo virke inde i mc_kassemuskler.
Avatar billede thulstrup Nybegynder
18. oktober 2004 - 21:46 #3
Har du mulighed for at ligge din fla op? Det gør det lidt lettere at gennemskue din opbygning.
Avatar billede flashnoob Nybegynder
20. oktober 2004 - 16:06 #4
Hej Thulstrup, jeg har ikke mulighed for at lægge .fla filen op da den ligger på den stationære. Men jeg besriver lige igen.

Jeg har 2 mc, den ene mc1 og det andet mc2. mc1 får instance navnet mc_kassemuskler. I mc_kassemuskler sætter jeg den til at vise noget tekst på frame 2, og giver den label "muskler", og frame 1 får label "start". Samtidig hiver jeg mc_luktxt ind på frame2 ("muskler") og giver det instance navn mc_luktxt.
Det mc_luktxt skal gøre er at den skal køre mc_muskler hen på "start" igen efter klik på mc_luktxt.
Det gør jeg ved kode på stagen:

mc_kassemuskler.mc_luktxt.onRelease = function(){
  this._parent.gotoAndPlay("start");
}

(Jeg har også sørget for this.stop() på de to frames "start" og "muskler")


Hvad gør jeg galt? (Håber det er til at finde ud af)
Avatar billede thulstrup Nybegynder
21. oktober 2004 - 14:54 #5
Det ser rigtigt ud. Prøv at trace mc'et. Den skulle gerne skrive noget ala '_level0.mc_kassemuskler'

mc_kassemuskler.mc_luktxt.onRelease = function(){
  trace(this._parent)
  this._parent.gotoAndStop("start");
}
Avatar billede flashnoob Nybegynder
23. oktober 2004 - 18:17 #6
thulstrup > Hmm... Problemet er at den ikke kan traces, da den slet ikke kan aktiveres.

Nu har jeg lagt filen op: http://www.virksaa.1go.dk/exp/

(Jeg vil gerne give flere point hvis du ønsker.... for det driver mig virkelig til vanvid!)
Avatar billede thulstrup Nybegynder
25. oktober 2004 - 08:01 #7
Problemet er at på det tidspunkt hvor du definere din onRelease funktion:

mc_kassemuskler.luktxt.onRelease = function() {
    this._parent.gotoAndPlay("start");
};

er der ikke noget movieclip, der hedder mc_kassemuskler.luktxt. luktxt bliver jo først placeret i frame 5.
Det letteste er at smide nedenstående kode ind i frame 5 i dit mc_kassemuskler movieclip, så burde det virke:

luktxt.onRelease = function() {
    this._parent.gotoAndPlay("start");
};
Avatar billede flashnoob Nybegynder
25. oktober 2004 - 08:35 #8
Ja for søren da! Hvorfor dælen har jeg ikke tænkt på det :/
Well, nu virker det da! Perfekt.
Tak for det thulstrup, smid et svar.
Avatar billede thulstrup Nybegynder
25. oktober 2004 - 08:40 #9
Det var så lidt :o)
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

IT-JOB

Capgemini Danmark A/S

Open Application (Denmark)

Capgemini Danmark A/S

AI Data Architect

Politiets Efterretningstjeneste

GenAI Specialist i PET