Visualizzazione dei risultati da 1 a 5 su 5
  1. #1

    Galleria fotogrfica Drag and Drop

    Ciao a tutti, vorrei realizzare una galleria fotografica nella quale le miniature e le immagini vengano caricate da remoto, ed una volta caricate le miniature, trascinandole singolarmente in un riquadro apposito mi carichi la foto in dimensione originale con un effetto predefinito..

    Come posso fare?

  2. #2
    Beh è come se chiedessi di farlo per te.


    Io ti do uno spunto

    creati 5 box con le tue miniature

    i box devono essre dei clip istanziati

    creati un box di check per la collisione fra le miniature e l'area in cui trascinare le miniature

    ai clip puoi associare

    codice:
    this.onPress=function() {
    	 this.swapDepths(10)
    	 startDrag(this,false)
    	 this.ritorna=false
    }
    this.onRelease=function(){
    	this.ritorna=true
    	stopDrag()
    }

    poi

    this.onEnterFrame=function(){
    if(this.hitTest(area_check)){
    _level0.box_big.loadMovie(........)
    }
    if(this.ritorna){
    fai tornare la miniatura al suo posto
    }
    }



    se tutto questo lo strutturi per metterlo magari dentro un prototype
    vedrai che sarà più fluido.

    Ciao

  3. #3
    insomma una cosa del genere elastica se ti piace studiala e riadattala alle tue esigenze.



    codice:
    MovieClip.prototype.presenta=function(){
    	this._alpha=0
    	this.useHandCursor=true
    	this.inity = this._y;
    	this.targety = this.inity;
    	this.initx = this._x;
    	this.targetx = this.initx;
    	this.elfactor = 0.75;
    	this.speedfactor = 0.9;
    	
    	this.onEnterFrame=function(){
    		if(this._alpha<100){this._alpha+=2}
    		if(this.hitTest(_level0.render_clip.mycheck)){
    			_level0.box.removeMovieClip()
    			_level0.box.attachMovie("B"+this._name,"Big",1)
    			_level0.box.Big._alpha=0
    			_level0.box.Big.onEnterFrame=function(){
    				if(this._alpha<100){inc=100-this._alpha/5;this._alpha+=inc}else{delete this.onEnterFrame}
    			}
    			
    			
    		}
    		if(this.ritorna){
    			this.diffx = this.targetx - this._x;
    			this.diffy = this.targety - this._y;
    			this.oldx = this._x;
    			this.oldy = this._y;
    			this._x += this.diffx / this.speedfactor + this.speedx * this.elfactor;
    			this._y += this.diffy / this.speedfactor + this.speedy * this.elfactor;
    			this.speedx = this._x - this.oldx;
    			this.speedy = this._y - this.oldy;
    		}
    			
    		
    	}
    	this.onPress=function() {
    		 this.swapDepths(10)
    		 startDrag(this,false)
    		 this.ritorna=false
    		}
    	this.onRelease=function(){
    		this.ritorna=true
    		stopDrag()
    	}
    }
    r1.presenta()
    r2.presenta()
    r3.presenta()
    r4.presenta()
    r5.presenta()
    r6.presenta()
    // r1....r6 sono i clip con dentro le miniature.

    Ciauz:

  4. #4
    Ciao, grazie mille per la funzione completa
    nella riga qui sotto, a cosa ti riferisci esattamente?
    if(this.hitTest(_level0.render_clip.mycheck))
    E' un clip che si trova già sullo stage o che hai caricato in precedenza?

  5. #5
    hai ragione l'ho estrapolato da un mio swf

    devi solo far riferimento al clip "area di check" dell'hitTest.

    quindi chiamalo come vuoi e fai ad esso riferimento.

    quindi quando trascini i 6 clip su mycheck.

    Ciao

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.