salve!
anche oggi ho un problema con flash... mi spiego.
il mio sito è organizzato così:
main.swf che carica sito.swf che carica o clip1.swf o clip2.swf a seconda del frame.
ora volglio aggiundere un preload al main.swf perchè è pesantuccio (1MB!!!). se lo metto esterno faccio casino perchè devo impostare il this._lookroot=true e poi alla fine disabilitarlo altrimenti non mi visualizza più gli altri filmati. però posso metterlo interno avendo solo 1 frame sul main.swf. Ho provato a mettere questo script sul layer perload:
codice:
function preloader() { 
   barWidth = 250; // lunghezza della barra 
   barHeight = 5; // altezza della barra 
   startX = 100 // posizione x del preloader 
   startY = 200 // posizione x del preloader 
   goSomewhere = "inizio";  
   var pB = this.createEmptyMovieClip("preloadBar", 2); 
   // istruzione della barra
   var pK = this.createEmptyMovieClip("preloadBarKeyline", 3); 
   pK.lineStyle(1,0xFFFFFF,100); 
   pK.moveTo(startX,startY); 
   pK.lineTo(startX+barWidth,startY);pK.lineTo(startX+barWidth,startY+barHeight); 
   pK.lineTo(startX,startY+barHeight);pK.lineTo(startX,startY); 
   // percentuale
   this.createTextField("percentText",4,startX,startY-(barHeight*4),30,20); 
   percentTextFormat = new TextFormat(); 
   percentTextFormat.font = "_sans"; 
   percentTextFormat.color = 0xCCCCCC; 
   this.percentText.setTextFormat(percentTextFormat); 
   ptotal = this.getBytesTotal(); 
   // 
   this.onEnterFrame = function() { 
      if (ploaded == ptotal && ptotal > 0) { 
         pB.removeMovieClip();pK.removeMovieClip(); 
         percentText.removeTextField(); 
         this.gotoAndStop(goSomewhere); 
         this.onEnterFrame = null; 
      } else { 
         ploaded = this.getBytesLoaded(); 
         ptotal = this.getBytesTotal(); 
         percent = Math.round((ploaded/ptotal)*barWidth); 
         percentText.text = Math.round((ploaded/ptotal)*100) + "%"; 
         percentText.setTextFormat(percentTextFormat); 
         pB.clear(); 
         pB.moveTo(startX, startY); 
         pB.beginFill(0x006666, 100); 
         pB.lineTo(percent+startX, startY); 
         pB.lineTo(percent+startX, startY+barHeight); 
         pB.lineTo(startX, startY+barHeight); 
         pB.lineTo(startX, startY); 
         pB.endFill(); 
      } 
   } 
}
e questo sul layer richiama:
codice:
stop(); 
preloader();
poi metto un'etichetta di nome "inizio" dove inizia il filmato (nel mio caso 2°)

Dovrebbe funzionare... E' un preloader ultratestato... Ma quando lo guardo in rete vedo una schermata nera, come lo sfondo del filmato, e poi dopo una bella attesa compare il filamto. questo vuol dire che non funziona il preloader... come posso risolvere?