Avatar billede camban Nybegynder
15. juni 2006 - 14:56 Der er 5 kommentarer og
1 løsning

loadMovie problemer

Har lavet et slideshow med flere billeder der skifter - der køre på koden nedenfor liggende på hver enkel mc. Billederne ligger i mapper under navnene 1,2,3 osv. og det hele virker fint når jeg køre slideshow.swf-filen for sig selv. Men når det skal lægges ind i en flash-skabelon, vhj af _root.sidegrafik.loadMovie(_level0.sti add "images/" add _level0.afsnitBillede) - kan den ikke finde billederne...

Slideshow-koden.

import mx.transitions.*;
createEmptyMovieClip("a5",1); a5._alpha=0;
createEmptyMovieClip("b5",2); b5._alpha=0;

(f=

function()
{
  clearInterval(i);
  if(c == a5)
      {p = b5}
  else
    {p = a5};
//  p = ((c == a) ? b : a);
(m5 = new MovieClipLoader()).loadClip("4/" + _root.randRange(1,6) + ".jpg", p);
  m5.onLoadComplete=function()
  {
     
      new Tween(c,"_alpha",0,100,0,40);
      t=new Tween(c=p,"_alpha",0,0,100,40);
      t.onMotionFinished = function()
      {
        i=setInterval(f, 10000);
      }
  }
}).call();

Jeg har hårdt brug for hjælp :o)
Avatar billede _k Nybegynder
15. juni 2006 - 15:47 #1
Når du loader en swf ind i en swf, arver den indloadedes swf bla. roden fra den swf der loades ind i. Dvs. at ligger den swf du loader ind i en anden mappe, kan den ikke finde billederne der skal loades ind. De kommer til at ligge forkert.

Derfor skal du enten sørge for at swf'erne ligger ved siden af hinanden, eller at din loadClip-reference bliver relativ til "rod-swf'ens. Altså noget i retning af:

...loadClip("NyBilledSti/4/" + _root.randRan...
Avatar billede camban Nybegynder
16. juni 2006 - 08:11 #2
Selve skabelonen ligger i roden på serveren, mens slideshow-filen og alle billedemapperne ligger under images. - Skal jeg ændre stien til images/4/..osv?

Noget andet jeg tror der spiller ind er at jeg i slideshow-filen i roden har liggende flg. kode:

function randRange(min, max)
{
  tal = Math.round(Math.random()*(max-min))+min;
    trace(tal);
return tal;
}

Og jeg referer til den i slideshow_mc som _root.randRange. Skal det ændres?
Avatar billede _k Nybegynder
16. juni 2006 - 09:30 #3
Yep, lyder som om du allerede har fanget det :)

Du skal have ændret din billedsti. Konsekvensen af det bliver at du ikke kan tjekke din indloadede swf når du swf'er den - stien vil jo så være forkert. Du kan komme udenom det ved at lave en if-statement, hvis det generer dig for meget:
if(_root == this) { trace("selvstændig fil"); } else { trace(kører i en anden swf); }

Din _root skal også ændres. Nu kan jeg ikke lige lure din struktur, men du kan ramme den ved hjælp af "_parent", hvor du hopper et mc tilbage af gangen. Du kan også hoppe flere gange tilbage med "_parent._parent"
Avatar billede camban Nybegynder
16. juni 2006 - 09:40 #4
Jeg har lige fået det til at virke...det var _parent. der var løsning. Jeg referer til en funktion der ligger en gang længere ude - tusind tak for hjælpen og smid et svar :o)
Avatar billede _k Nybegynder
16. juni 2006 - 11:02 #5
Super, her kommer et svar.
Avatar billede _k Nybegynder
16. juni 2006 - 13:23 #6
Mange tak for pointene.
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