Visualizzazione dei risultati da 1 a 4 su 4

Discussione: drag inverso

  1. #1
    Utente di HTML.it
    Registrato dal
    Dec 2002
    Messaggi
    1,628

    drag inverso

    Ho creato un clip contenente un cerchio.
    Ne ho messi due in scena e li ho istanziati "uno" e "due".
    Volevo fare in modo che trascinando verso il basso il secondo il primo si spostasse in direzione esattamente opposta.
    Sulla linea temporale ho scritto:

    due.onPress=function(){
    this.startDrag(true,438,150,438,350);
    }
    due.onRelease=function(){
    this.onPress=null;
    }

    uno.onEnterFrame=function(){
    this._y= _root.due._y;
    }

    Prima cosa non capisco perchè se rilascio il mouse lui comunque continua a fare il drag....
    Nell'ultimo comando invece gli dico di copiare in "uno" il valore in y di "due" e questo lo fa....ma come dicevo io dovrei potergli dire di fare l'inverso....e come si fa???

    Da qui si può scaricare il file:


    http://www.aiassarevisioni.com/magaz...ag_inverso.zip

  2. #2
    In azioni del cerchio uno:
    onClipEvent (enterFrame) {
    this._y=500-_level0.due._y
    }

    in azione del cerchio due:
    on (press) {
    startDrag(this,true,438,150,438,350);
    trace(this._y)
    }
    on (release) {
    stopDrag();
    }

    Ciao, Francesco
    Ciao, Francesco

  3. #3
    Utente di HTML.it L'avatar di negatyve
    Registrato dal
    Feb 2001
    Messaggi
    9,479
    codice:
    var l = 438;
    var t = 150;
    var r = 438;
    var b = 350;
    due.onPress=function()
    {
    	this.startDrag(true, l, t, r, b);
    	this.onMouseMove = function()
    	{
    		// la posizione dell'altro si ottiene sottraendo,
    		// alla posizione iniziale, lo spostamento 
    		// effettuato da questo
    		uno._y = t - (this._y - t);
    		updateAfterEvent();
    	}
    }
    due.onRelease=function()
    {
    	stopDrag();
    	delete this.onMouseMove;
    }

  4. #4
    Utente di HTML.it
    Registrato dal
    Dec 2002
    Messaggi
    1,628

    Re:

    Sono riuscito ad ottenerlo anche in questo modo mettendo ques'azione sulla linea temporale:


    partenza=300;
    temporaneo;



    due.onPress=function(){
    this.startDrag(true,438,150,438,350);
    }
    due.onEnterFrame=function(){
    _root.temporaneo= Number (this._y);

    }

    uno.onEnterFrame=function(){
    differenza= Number (_root.temporaneo-_root.partenza);
    this._y= (_root.differenza)*-1;
    }
    due.onRelease=function(){
    stopDrag();
    }


    Non sarà un granchè...ma funge....pura fortuna da principiante.

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.