Adobe Flash Anleitung | Dynamische Rahmen zeichnen, Prozentpreloader & PopUp

  1. sevY

    sevY Thread Starter

    Hi zusammen,

    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.

    PHP:
    //Actionscript 1.0
    MovieClip.prototype.drawFrame=function(x1,y1,x2,y2,lineSize,colour,alpha)
         { 
        
    this.lineStyle (lineSizecolouralpha);
        
    with(this)
            { 
            
    lineTo(x2y1); 
            
    lineTo(x2y2); 
            
    lineTo(x1y2); 
            
    lineTo(x1y1); 
            } 
        }
    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.


    PHP:
    //Actionscript 1
    for(var j=0;j<this.repeats;j++)
        {
        var 
    images=image_box.attachMovie('images','images'+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>&& percent!=100)
                {
                
    this.percent_field.text=percent;
                }
            if(
    this.frame.getBytesLoaded()==this.frame.getBytesTotal() && this.frame.getBytesLoaded()>4)
                {
                
    this.percent_field.text='';
                
    this.sign_field.text='';
                
    this.frame.drawFrame(0,0,this.frame._width,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+30));
            
    images._y=base_y;
        }

    Enjoy.

    Yves
     
    sevY, 13.07.2004
    #1
Die Seite wird geladen...
Ähnliche Themen - Anleitung Dynamische Rahmen
  1. xR8y
    Antworten:
    0
    Aufrufe:
    1.126
    xR8y
    12.08.2008
  2. sciuk
    Antworten:
    2
    Aufrufe:
    658
    sciuk
    28.10.2005
  3. nlphansli
    Antworten:
    4
    Aufrufe:
    678
    Jakob
    08.10.2005