Visualizzazione dei risultati da 1 a 5 su 5
  1. #1
    Utente di HTML.it
    Registrato dal
    Aug 2007
    Messaggi
    21

    [Flash8] caricare un movieclip dimensioni fisse

    Ciao a tutti,

    Avrei un problema...
    Dovrei creare un swf (es. index.swf) che si autoadatti alle dimensioni dello schermo su cui viene visualizzato. In questo swf vorrei poi caricare un file swf esterno (es. esterno.swf) che risulti sempre centrato allo schermo e di dimensioni "fisse" (es. altezza 500 px larghezza 400 px).

    Potreste darmi una mano con il codice?

    Grazie.
    Saluti
    zeus

  2. #2
    per il primo problema potresti applicare un listener allo stage e chiamare onResize().

    Ogni volta che ridimensioni chiami una funzione che faccia spostare i tuoi oggetti in base alle tue necessità.
    Cerca sul web "layout liquido flash".
    Se ne hai bisogno solo all inizio ti basta rilevare le dimensione dello stage all'inizio e agire di conseguenza.

    Per il secondo problema, ti consiglio di usare MovieClipLoader, con un listener che ti permette di intercettare la fine del caricamento, a quel punto rilevi le dimensioni dell swf e lo centri.

  3. #3
    Utente di HTML.it
    Registrato dal
    Aug 2007
    Messaggi
    21
    Ciao punkamorfo,
    grazie per la risposta!
    Farò un giretto con le parole chiave che mi hai fornito per vedere cosa riesco a trovare.

    Grazie ancora...
    Ciao
    zeus

    (se non riuscirò nel mio intento ti stresserò )

  4. #4
    Utente di HTML.it
    Registrato dal
    Aug 2007
    Messaggi
    21
    Ciao!

    ho trovato la soluzione al mio problema,

    per chi fosse interessato trovate la soluzione qui qui


    ma essendo incchiappato con l'AS ne sorge un secondo......

    praticamente carico il movieclip esterno con questo codice:
    loadMovie("sito.swf", "inMezzo");

    il clip "inMezzo", da quanto ho capito, ha questi attributi che lo centrano (n.b. ho utilizzato tutto quel codice, compreso quello html):
    inMezzo._x = Stage.width/2-inMezzo._width/2;
    inMezzo._y = Stage.height/2-inMezzo._height/2;


    ecco il problema: caricando così il file non me lo centra perfettamente ma (giustamente)
    mi ritrovo a centro video il punto x 0; y 0; del file sito.swf (ovvero l'angolo superiore sinistro)

    come posso fare per centrare l'intera area del clip caricato?

    la mia teoria fantascientifica mi suggerisce:
    essendo il file sito.swf di dimensioni 900px X 650px avevo pensato di sottrarre la metà (ovvero -450 sull' asse x e -325 sull'asse y) per centrarlo "manualmente"...... è una fesseria?

    qualora fosse possibile, come trasformo il codice? dovrei sottrarre 450px a questo?:master:
    inMezzo._x = Stage.width/2-inMezzo._width/2;
    e come?

    grazie e ..... scusate l'ignorantità
    ciao
    zeus

  5. #5
    la soluzione è MovieClipLoader!

    Ti spiego: usando loadMovie tu rikiami la funzione di centramento prima che il caricamento sia completato, quindi le tue variabili risultano sempre zero!

    Quindi o rikiami la funzione con onEnterFrame (cosa sconsigliata), o cariki il tuo clip con moviecliploader.
    Prova cosi:
    Codice PHP:
    var MCL:MovieClipLoader=new MovieClipLoader()
    var 
    ML:Object=new Object()
    MCL.addListener(ML)

    MCL.loadClip("tuofile.swf",movieClipcontenitore)

    ML.onLoadInit=function(){
    // qui dentro metti la funzione per centrare
    }
    // in pratica quando il contenuto è fruibile (onLoadInit) puoi rilevare le dimensioni 
    hai a disposisione anke altri eventi:
    Codice PHP:
    onLoadStart() // intercette l inizio del caricamento
    onLoadComplete()// intercetta la fine del caricamento, viene chiamato prima di onLoadInit
    onLoadProgress(target,bytesLoaded,bytesTotal)/*viene chiamato ripetutamente durante il caricamento, ottimo per i preload*/ 
    vai vai ke funziona. studiati bene quel layout liquido perkè capisci un sacco di cose su come gestire gli elementi sullo stage!
    buo lavoro

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.