Pagina 1 di 3 1 2 3 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 25

Discussione: scroll di immagini

  1. #1

    scroll di immagini

    ciao a tutti,
    recentemente ho scaricato da flash-mx un bello scroller di immagini e l'ho poi adattato con le mie immagini; il problema è che quando si clicca su un corso specifico, l'immagine corrispondente non è mai quella giusta...; non so da che parte intervenire sul codice actionscript.

    Questo è il flash:

    http://www.kingfit.com/prova.htm

    grazie per il vostro tempo
    Juan

    PS. vi devo postare il codice?

  2. #2

    Re: scroll di immagini

    Originariamente inviato da Juanprimo
    ciao a tutti,
    recentemente ho scaricato da flash-mx un bello scroller di immagini e l'ho poi adattato con le mie immagini; il problema è che quando si clicca su un corso specifico, l'immagine corrispondente non è mai quella giusta...; non so da che parte intervenire sul codice actionscript.

    Questo è il flash:

    http://www.kingfit.com/prova.htm

    grazie per il vostro tempo
    Juan

    PS. vi devo postare il codice?
    dovresti aggiustare la coordinata x del mc che si sposta

    quindi forse è il caso di postare il codice


    ciao
    la verità non è una meretrice che si getta al collo di chi non la vuole ma anzi essa è dotata di una così altera bellezza che anche chi sacrifica tutto per ottenerla non è sicuro di averla raggiunta !

  3. #3
    ciao crescenzo..., ecco il codice:

    CONTROLLER 1:
    friction = 0.94;
    maxX = 675;
    minX = 15;
    if (Number(../:thego) == 0) {
    name = "../scroller";
    speed = ../:speedX;
    res = friction*-0.6;
    oldxpos = getProperty(name, _x);
    newxpos = Number(oldxpos)+Number((../:speedX*friction));
    ../:speedX = speed*friction;
    if (Number(speed) == 0) {
    newxpos = oldxpos;
    }
    if (Number(newxpos)>=Number(maxX)) {
    newxpos = oldxpos;
    ../:speedX = ../:speedX*res;
    }
    if (Number(newxpos)<=Number(minX)) {
    newxpos = oldxpos;
    ../:speedX = ../:speedX*res;
    }
    setProperty(name, _x, newxpos);
    }
    ___________________________________________

    CONTROLLER 2:
    con_width = getProperty("../content", _width);
    big_box_width = getProperty("../big_box", _width);
    little_box_width = (getProperty("../little_box", _width))-(getProperty("../scroller", _width));
    plus = 15;
    dif = (con_width-big_box_width)/little_box_width;

    ___________________________________________

    xpos = getProperty("../scroller", _x)-15;
    conxpos = ((dif*xpos)*-1);
    setProperty("../content", _x, Number(conxpos)+Number(plus));

    ___________________________________________

    CONTROLLER 3:
    little_width = getProperty("../little_box", _width);
    plus = getProperty("../little_box", _x);
    items = 8;
    pos_start = Number((little_width/items))+5.1;
    i = 0;
    while (Number(i)<Number(items)) {
    set("pos" add i, Number((pos_start*i))+Number(plus));
    i = Number(i)+1;
    }
    stop();
    ___________________________________________

    scroll_pos = getProperty("../scroller", _x);
    go = ../os_main;
    friction = 0.96;
    ../:speedX = 0;
    ___________________________________________

    dif = int(go-scroll_pos);
    targetpos = dif*0.32;
    xpos = Number(scroll_pos)+Number(targetpos);
    currentpos = getProperty("../scroller", _x);
    scroll_pos = getProperty("../scroller", _x);
    setProperty("../scroller", _x, xpos);
    if (Number(dif) == 0) {
    xpos = go;
    setProperty("../scroller", _x, xpos);
    tellTarget ("../controller1") {
    gotoAndPlay(1);
    }
    gotoAndStop(1);
    }

  4. #4
    a volo che ho ancora sonno
    se hai cambiato le img in quel mc
    e quindi le avrai sostituite con altre + grandi evidentemente ,
    quindi dovresti calcolare la larghezza max ora ottenuta cona queste img
    cioè controlla che
    maxX = 675;
    sia giusto

    ciao
    la verità non è una meretrice che si getta al collo di chi non la vuole ma anzi essa è dotata di una così altera bellezza che anche chi sacrifica tutto per ottenerla non è sicuro di averla raggiunta !

  5. #5
    ...si in effetti le ho sostituite con delle immagini più grandi, ognuna delle quali misura 500 px; ho provato a mettere 500 al posto di 675 ma è uguale a prima, cioè va avanti di più...

  6. #6
    di massima un esempio che ti scrivo direttamente, quindi andrebbe provato, ma solo per capirne i concetti base... spero di non esseremi sbagliato

    codice:
    MaxImg = 5
    DimIMG = 500 // dimensione estrema compresi bordi/spazi laterali
    
    // creati a mano una maschera così facciamo prima (500 x 150)
    
    this.createEmptyMovieClip("container",1)
    container._x=0
    container._y=0
    
    container.setMask(mask)
    
    
    // ciclo di caricamento immagini dentro il container
    
    for (I=1;I<MaxImg;I++){
         container.attachMovie("clip", "IMG"+I,I) // il clip nella libreria contiene l'mc "pic"
         container["IMG"+I]._x=I*DimIMG - DimIMG
         mc = eval(container["IMG"+I])
         mc.pic.loadMovie("foto"+I+".jpg")
         mc.pic._alpha=0
         mc.onEnterFrame=function(){
              this.car=this.pic.getBytesLoaded()
              this.tot=this.pic.getBytesTotal()
              if(this.car==this.tot && this.car > 1024){
                    // img caricata
                   this.pic._alpha=100
                   delete this.onEnterFrame
              }
        }
    }     
    
    
    // prototipo di funzionamento bottoni menu
    MovieClip.prototype.MoveIMG=function(){
    
               this.onPress=function(){
                    // chiamo la funzione passando l'ID della posizione
                     sposta_IMG(Number(substring(this._name, 4,2)))
               }
    }
    
    // assegno ai menu "m1, m2,m3....." il prototipo
    for (I=1;I<=MaxIMG;I++){
         this["m"+I].MoveIMG()
    }
    
    function MoveIMG(ID){
    
          container.ID=ID
          container.onEnterFrame=function(){
               oldX = X
               X = this.ID*DimIMG - this._x
               this._x += X/3
               if(oldX == X){
                      this._x = this.ID*DimIMG 
                      delete this.onEnterFrame
               }
         }
    }

  7. #7
    Qualche errorino c'è

    adesso l'ho provato e va

    Codice PHP:
    MaxImg 5
    DimIMG 
    500 // dimensione estrema compresi bordi/spazi laterali

    // creati a mano una maschera così facciamo prima (500 x 150)

    this.createEmptyMovieClip("container",1)
    container._x=10    
    container
    ._y=10

    sposta
    =10

    container
    .setMask(mask)


    // ciclo di caricamento immagini dentro il container
    I=1
    while(I<=MaxImg){
         
    container.attachMovie("clip""IMG"+I,I// il clip nella libreria contiene l'mc "pic"
         
    container["IMG"+I]._x=I*DimIMG DimIMG
         container
    ["IMG"+I].pic.loadMovie("foto"+I+".jpg")
         
    container["IMG"+I].pic._alpha=0
         container
    ["IMG"+I].onEnterFrame=function(){
              
    this.car=this.pic.getBytesLoaded()
              
    this.tot=this.pic.getBytesTotal()
              if(
    this.car==this.tot && this.car 1024){
                  
    this.pic._width=480
                  this
    .pic._height=130
                    
    // img caricata
                   
    this.pic._alpha=100
                   delete this
    .onEnterFrame
              
    }
        }
        
    I++
    }     


    function 
    SpostaIMG(ID){
          
    container.ID=ID
          container
    .onEnterFrame=function(){
               
    oldX X
               trace
    (this.ID)
               
    = (sposta+this.ID*DimIMG+DimIMG) - this._x
               trace
    (X)
               
    this._x += X/3
               
    if(oldX == X){
                      
    this._x = (sposta+this.ID*DimIMG+DimIMG)
                      
    delete this.onEnterFrame
               
    }
         }
    }

    m1.testo.text="Foto1"
    m2.testo.text="Foto2"
    m3.testo.text="Foto3"
    m4.testo.text="Foto4"
    m5.testo.text="Foto5"

    for(K=1;K<=MaxImg;K++){
        
          
    this["m"+K].onPress=function(){
                    
    // chiamo la funzione passando l'ID della posizione
                     
    this._parent.SpostaIMG(-Number(substring(this._name2,2)))
          }


  8. #8
    grazie rempox per il tuo codice, ma nel mio flash in che punto lo devo inserire...,scusa ma io di queste cose sono un neofita....; non si riesce a intervenire sul mio...;

    QUESTI DATI POTREBBERO SERVIRVI:
    Tutto lo scroll misura 4500 pixel, lo spazio della mia maschera in cui voglio che venga centrata ogni foto misura 500x230 px; gli spazi sono 9; lo spazio in cui si muove il rettangolino giallo è lungo 720 px

    ...vado avanti a provare

    grazie cmq
    Juan

  9. #9
    fai così ....tanto per capirne il funzionamento

    prendi un FLA nuovo 770 x 400

    creati 5 foto 500 x 150; chiamate foto1.jpg.......foto5.jpg

    creati graficamente un clip "mask" 500 x 150 posizionato in (10,10)

    creati un mc "Clip" vuoto, all'interno disegna un rettangolo di 500 x 150, premi F8 e confertilo in clip "pic" ed associa il nome istanza = pic

    cancellalo dallo stage in modo tale che vada sulla libreria

    apri la libreria seleziona il "Clip", tasto destro concatenamento nome "Clip"

    a questo punto prendi tutto il mio codice e lo incolli sulla 1° Frame, per intenderci sulla frame alla quale sullo stage corrisponde la mask

    Ciao

  10. #10
    ok rempox, ci provo

    grazie e buona giornata

    juan

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.