<div id="tutorialrahmen"> Was wird gemacht?: ...
Zielgruppe: ...
Dauer: ca. xx Minuten </div>

Ich hab bei einem aktuellen Job das Problem gehabt, das ich dynamisch geladene Bilder mit einem weißen Rand versehen wollte. Nur die Bilder waren immer verschieden breit.

Also habe ich einen Prototype entwickelt:

 //Actionscript 1.0 
 MovieClip.prototype.drawFrame=function(x  1,y1,x2,y2,lineSize,colour,alpha) 
     { 
     this.lineStyle (lineSize, colour, alpha); 
     with(this) 
         { 
         lineTo(x2, y1); 
         lineTo(x2, y2); 
         lineTo(x1, y2); 
         lineTo(x1, y1); 
         } 
     } 

Anwendungsbeispiel:

Es werden Bilder mittels des loadVars Objektes via PHP aus MySQL ausgelesen. Eine for Schleife instanziert die Bilder und setzt Sie mit einem Abstand von 30px nebeneinander. Ist ein großes Bild für das kleine Previewbild vorhanden, wir eine Funktion im onReleaseHandler als Eigenschaft des instanzierten MovieClips definiert.

Dazu muss selbstverständlich im <head> der Datiei, die diese swf beinhaltet, entsprechende Javascript Funktion PopUp(); definiert sein.

Netter Nebeneffekt des Scripts ist es, das die Bilder mittels einer Prozentanzeige preloaded werden können.

 //Actionscript 1 
 for(var j=0;j<this.repeats;j++) 
     { 
     var images=image_box.attachMovie('images','i  mages'+j,j); 
     images.image=eval('this.image_'+j); 
     images.image_max=eval('this.image_max_'+  j);                         
     images.frame.loadMovie(images.image); 
     images.percent_field.text=0; 
     images.sign_field.text='%'; 
     images.onEnterFrame=function() 
         { 
         var current=this.frame.getBytesLoaded() 
         var total=this.frame.getBytesTotal() 
         var percent=Math.round((current/total)*100);                         
         if(percent>0 && percent!=100) 
             { 
             this.percent_field.text=percent; 
             } 
         if(this.frame.getBytesLoaded()==this.fra  me.getBytesTotal() && this.frame.getBytesLoaded()>4) 
             { 
             this.percent_field.text=''; 
             this.sign_field.text=''; 
             this.frame.drawFrame(0,0,this.frame._wid  th,this.frame._height,3,'0xffffff',100);   
             if(this.image_max!='') 
                 { 
                 this.onRelease=function() 
                     { 
                     getURL("javascript:popup('"+this.image_max+"');"); 
                     } 
                 } 
             delete this.onEnterFrame; 
             } 
         } 
         images._x=base_x+(j*(this.frame._width+3  0)); 
         images._y=base_y; 
     } 

Zuletzt geändert am 23.03.2005 07:36 Uhr von Hombre ( Besuche)

© 2004 – 2024 ApfelWiki

Impressum - Datenschutz

cb