• User

    Resize slideshow

    Buongiorno a tutti, mi sono appena iscritta a questo forum e spero di trovare una soluzione al mio problema.
    Sto realizzando un sito ridimensionabile a tutte le risoluzioni e fin qui tutto ok, faccio caricare in un mc vuoto un swf esterno (dove all'interno ho una galleria di immagini creata con slideshowpro), quando testo la pagina funziona perfettamente e si ridimensiona tranne lo slideshow, come posso fare? Nella finestra principale ho questo script ma senza nessun parametro per far ridimensionare lo slide:

    #include "lmc_tween.as"
    Stage.align = "TL";
    Stage.scaleMode="noscale";
    _quality="BEST";
    // --
    var nuovoMenu:ContextMenu = new ContextMenu();
    nuovoMenu.hideBuiltInItems();
    var mcVoce:ContextMenuItem = new ContextMenuItem("Flash Site on all Resolution", gotoMc);
    nuovoMenu.customItems.push(mcVoce);
    this.menu = nuovoMenu;
    function gotoMc() {
    getURL("ottimizzare-un-sito-flash-a-tutte-le-risoluzione-di-schermo", "_blank");
    }

    _global.setStage = function() {
    slis = new Object();
    slis.onResize = function() {
    //imposto le coordinate del clip centro tramite tween
    centro.tween("_x", Stage.width/left, "easeoutBack");
    centro.tween("_y", Stage.height/2,1, "easeoutBack");
    };
    Stage.addListener(slis);
    slis.onResize();
    };
    setStage();
    //Adatto l'immagine
    var rapp = foto._width/foto._height;
    var ecout = new Object();
    ecout.onResize = function() {
    bouge();
    };
    Stage.addListener(ecout);
    bouge = function () {
    foto._x = 200;
    foto._y = 0;
    foto._width = Stage.width;
    foto._height = Stage.width/rapp;
    if (foto._height<Stage.height) {
    foto._height = Stage.height;
    foto._width = Stage.height*rapp;
    }
    // end if
    };
    bouge();
    stop();

    Sono abbastanza una frana in flash, qualcuno potrebbe illuminarmi su questo quesito?

    Grazie infinite
    Seifer


  • Super User

    Ciao benvenuta sul Forum GT, forse quello che hai postato non è il codice che stati usando o sono io che non riesco a capire quale sia il movieclip contenitore e la funzione per caricare lo swf esterno?


  • User

    Ciao Nhatan, grazie d'avermi risposto, ti spiego:
    Ho un livello con istanza "centro"
    Un livello con istanza "SlideShowPro"
    e un livello con l'azione (ripulita) che mi serve per far ridimensionare "centro" a tutte le risoluzioni senza alterarmi l'altezza del font dei menu e del logo.
    #include "lmc_tween.as"
    Stage.align = "TL";
    Stage.scaleMode="noscale";
    _quality="BEST";
    // --
    _global.setStage = function() {
    slis = new Object();
    slis.onResize = function() {
    //imposto le coordinate del clip centro tramite tween
    centro.tween("_x", Stage.width/left, "easeoutBack");
    centro.tween("_y", Stage.height/2,1, "easeoutBack");
    };
    Stage.addListener(slis);
    slis.onResize();
    };
    setStage();

    Ora, quando visualizzo sul browser la pagina è tutto ok per quanto riguarda "centro" ma non so come fare per far ridimensionare anche SlideShowPro, non si scala.


  • Super User

    Scusa ma cosa intendi per ridimensionamento? con questo

    
    global.setStage = function() {
     slis = new Object();
     slis.onResize = function() {
      //imposto le coordinate del clip centro tramite tween
      centro.tween("_x", Stage.width/left, "easeoutBack");
      centro.tween("_y", Stage.height/2,1, "easeoutBack");
     };
     Stage.addListener(slis);
     slis.onResize();
    };
    setStage()
    
    ```centro mica si ridimesiona semmai si riposiziona secondo la risoluzione , conosco questo codice pubblicato da Julius D.
    Se parliamo di ridimensionamento semmai è il clip foto che si ridimensiona a secondo della risoluzione, o sto sbagliando?

  • User

    Hai ragione, ho sbagliato termine, centro (che in questo caso l'ho spostato a sx) si riposiziona a seconda della risoluzione, la clip foto l'ho eliminata perchè non mi serve visto che il sito non avrà un immagine di sfondo, ho inserito il livello my_ssp (slideshowpro) che vorrei che si riposizionasse secondo le varie risoluzioni come fa centro....


  • User

    Sicuramente si potrà fare in altro modo per far si che sia il movieclip centro (che io ho spostato a sx) e il movieclip my_ssp che stanno sullo stesso stage si possano riposizionare a tutte le risoluzioni senza alterarmi il font dei menu, ho adattato quello di Julius ma sono bloccata per my_ssp e non so dove sbattere la testa.


  • Super User

    Ok, ora incomincio a capire, dunque, prima di tutto ho visto che per spostare centro a sinistra hai usato la parola "left" ma non credo sia un termine corretto, se scrivi "pippo" ottieni lo stesso effetto ma senza controllo, cioè è vero che è a sinistra, ma a caso, non sei tu che decidi quanto, tornando al problema "my_ssp" è il clip contenitore? però nel codice che hai postato non lo vedo? Un altra cosa dove si trova "my_ssp" nella root o dentro centro?


  • Super User

    Un altra cosa per caso il sito è on line così vedendolo capisco meglio quello che vuoi ottenere.


  • User

    no Nhatan non l'ho ancora messo on line, cercando una soluzione anche nel sito di SlideShowPro dove ho acquistato il programma negli esempi ho trovato questo sito che come struttura rispecchia la mia (satariano punto com, lo scrivo così o non mi fa inviare il messaggio) il blocco menu logo ecc non ho avuto problemi, ma io non riesco a far si che anche lo slide (come in questo sito) si ridimensioni a tutte le risoluzioni.

    La clip contenitore l'ho tolta e my_ssp è nella root


  • Super User

    Con questo sito satariano mi hai confuso, qua si che le immagini si ridimensionano, avevo capito che volevi riposizionare lo slide, lo vuoi riposizionare come fai con centro, o vuoi che assumano la dimensione dello stage?


  • User

    scusa non volevo farti diventare matto 🙂 la mia strruttura è già al 100% ne più ne meno come quella che hai visto e se faccio il resize della finestra la parte menù assume la dimensione dello stage e se ne sta buona buonina a sinistra senza alterarmi l'altezza del font ma non quel dannatissimo slide, non segue il ridimensionamento..


  • Super User

    Ok ma così per me è difficile capire, puoi almeno postare il codice integrale che hai usato per il sito, per integrale intendo tutto, anche la funzione che hai usato per caricare la galleria. Comunque se ti stai basando sul codice di Julius la chiave per avere un movieclip che si ridimensioni secodo lo stage sta in questa proporzione,

    
       //Adatto l'immagine
    var rapp = foto._width/foto._height;
    var ecout = new Object();
    ecout.onResize = function() {
        bouge();
    };
    Stage.addListener(ecout);
    bouge = function () {
        foto._x = 0;
        foto._y = 0;
        
        foto._width = Stage.width;
        foto._height = Stage.width/rapp;
        if (foto._height<Stage.height) {
            foto._height = Stage.height;
            foto._width = Stage.height*rapp;
        
        }
        // end if           
    };
    bouge();
    stop()
    
    

  • User

    Il codice integrale è quello che ti ho scritto, non ce ne sono altri, per creare la galleria con SlideShowPro non ne servono, è un componente che si trascina sullo stage poi richiama le immagini tramite file xml che risiedono in una cartella.
    <?xml version="1.0" encoding="UTF-8"?>
    <gallery>
    <album id="ssp" lgPath="galleria/album1/grandi/" title="" description="" tn="">
    <img src="1.jpg" title="" caption="" link="" target="_blank" pause="" vidpreview="" />
    <img src="2.jpg" title="" caption="" link="" target="_blank" pause="" vidpreview="" />
    <img src="3.jpg" title="" caption="" link="" target="_blank" pause="" vidpreview="" />
    <img src="4.jpg" title="" caption="" link="" target="_blank" pause="" vidpreview="" />

    </gallery>

    Riuscissi a capire come hanno fatto con quel link che ti ho dato...


  • Super User

    Pensavo lo caricassi come swf esterno, nei parametri forse esiste qualche modo per renderlo ridimensionabile, o dato uno sguardo alle istruzioni ma sono in inglese e non ci capisco molto.


  • Super User

    La logica da as2 a as3 non cambia, se vuoi che il menù rimanga a sinistra basta assegnargli le coordinate, ad esempio: menu_mc.x=50 - menu_mc.y=100 per far si che rimanga sempre a sinistra, mentre la barra verticale gli assegni sempre coordinate x=0 e y=0 metre per fargli mantenere sempre l'altezza dello stage gli assegni height: mc_barra.height=stage.stageHeight;


  • User

    Ciao Nhatan
    Ora tutta la pagina è allineata in alto a sinistra e si ridimensiona perfettamente, chiedo, quando la ridimensiono il font dei menu si rimpiccioliscono, come posso fare perchè non accada?
    Non posso fare Stage.scaleMode = "noScale" altrimenti nel ridimensionamento le immagini dello slide si tagliano, c'è una soluzione?

    Grazie mille


  • Super User

    Se vuoi che gli oggetti nel tuo caso il menu non si rimpiciolisca devi per forza settare Stage.scaleMode = "noScale", scusa sono curioso come fai a mantenere la proporzione larghezza/altezza dello slide, puoi postare la funzione?


  • User

    Non mi chiedere come fa SlideShowPro a mantenere larghezza e altezza ma lo fa, se inserisco Stage.scaleMode = "noScale" il menu è ok ma lo slide non si ridimensiona più...uffaaaaaaaaaaaaa


  • Super User

    Mmm, scusa sei sicura che mantenga la proporzione? Se provi a schiacciare la finestra del browser l'immagine non si deforma?


  • User

    no, per niente