Visualizzazione dei risultati da 1 a 7 su 7
  1. #1
    Utente di HTML.it
    Registrato dal
    Nov 2000
    Messaggi
    251

    precaricare filmato invisibile

    Ciao,

    Ho un movie test1.swf in quale presenta un pulsante che cliccandolo mi carica e sostituisce il movie attuale con un test2.swf. Ho utilizzato la funzione loadMovieNum("test2.swf", 0); --- tutto ok

    Mi piacerebbe però che mentre un visitatore rimane nel test1.swf questo precarichi il filmato test2.swf in modo da velocizzare il preload del test2.swf quando il visitatore preme il pulsante e senza che debba per forza caricare prima il test2.
    I filmati non hanno ne variabili, ne musica ne nessun actionscript che richiami uno con l'altro.
    Che comando devo usare per precaricare il filmato che deve rimanere invisible e non appesantire all'inizio il movie1?

    Ciaoo


  2. #2
    c'è un po' di confusione, mi sembra.

    Prima di tutto il loadMovie/loadMovieNum sono distruttivi: vale a dire che sostituiscono in tutto e per tutto il contenuto del contenitore, cioè il movieclip per il loadMovie, oppure il livello per il loadMovieNum.

    Alla luce di questo è fortemente sconsigliato caricare sul livello ZERO, perché in questo modo si PERDE il filmato chiamante.

    Il caricamento tramite loadMovie/loadMovieNum NON appesantisce il filmato.

    Certamente sarà necessario fare il precericamento, ma NON è un appesantimento, valgono le stesse identiche considerazione per cui si fanno i preload per i filmati principali.

    Infine, non c'è nessun problema nel caricare un filmato esterno mantenendolo "invisibile" quindi farlo ricomparire al momento opportuno.

  3. #3
    Utente di HTML.it
    Registrato dal
    Nov 2000
    Messaggi
    251

    ok

    grazie mille... la confusione c'è in quanto sono un neofita...

    Cmq sei stato chiarissimo .. solo il codice non mi è chiarissimo:

    1) devo utilizzare loadMovieNum("test2.swf", 1) e poi rendere invisibile in movie..
    2) quando metto questo comando nel primo frame questo non appesantisce il caricamento del filmato principale test1.swf...giusto?
    3) ci sono problemi nel caricare movie pesanti? ho 4 movie per un totale di quasi 10Mb




  4. #4
    Utente di HTML.it
    Registrato dal
    Nov 2000
    Messaggi
    251
    non so se è la procedura corretta...

    ho due filmati test1.swf e test2.swf

    Nel test1.swf utilizzo la funzione
    loadMovieNum("test2.swf", 1);
    setProperty("test2.swf", visibile, false);

    Poi cliccando il pulsante utilizzo loadMovie("test2.swf", this) per visualizzare il secondo swf.

    tutto ok..... solo mi chiedevo 2 cose ke nn ho capito:

    1) quando si avvia il filmato test1.swf e utilizzo la funzione loadMovieNum .... questa viene caricata prima o dopo l'avvio del filmato?? cioè... prima di vedere il filmato test1.swf devo aspettare ke mi carichi il test2 oppure lo esegue in "background" ?

    2) la funzione loadMovie("test2.swf", this) mi cancella dalla "cache" il primo filmato?

    grazie

  5. #5
    uhmmm...
    mi pare che la confusione sia rimasta...
    inserisco i miei commenti in blu tra le tue righe...

    Originariamente inviato da sfinge
    non so se è la procedura corretta...

    ho due filmati test1.swf e test2.swf

    Nel test1.swf utilizzo la funzione
    loadMovieNum("test2.swf", 1);
    setProperty("test2.swf", visibile, false);
    forse volevi scrivere test1.swf
    Poi cliccando il pulsante utilizzo loadMovie("test2.swf", this) per visualizzare il secondo swf.

    tutto ok..... solo mi chiedevo 2 cose ke nn ho capito:

    1) quando si avvia il filmato test1.swf e utilizzo la funzione loadMovieNum .... questa viene caricata prima o dopo l'avvio del filmato?? cioè... prima di vedere il filmato test1.swf devo aspettare ke mi carichi il test2 oppure lo esegue in "background" ?
    se non utilizzi un preload, Flash comincia a riprodurre qualcosa appena il buffer di memoria del player è sufficientemente pieno, con la tecnica dello "streaming". Per questo (sempre che tu non abbia fatto il preload) appena legge l'istruzione di loadMovie, la esegue e comincia a caricare anche il secondo filmato. Naturalmente, se il caricamento del primo NON è ancora terminato le risorse disponibili saranno ripartite tra i due caricamenti, appesantendo il tutto.
    Ma qui tu, scrivendo loadMovie("test2.swf", this) commetti l'errore della prima volta, perché cancelli il contenuto del contenitore

    2) la funzione loadMovie("test2.swf", this) mi cancella dalla "cache" il primo filmato?
    il loadMovie NON CANCELLA la cache del browser, MA RIMPIAZZA il contenuto del contenitore.
    grazie
    Ultime considerazioni:
    Se non hai delle esigenze particolari, è sempre consigliabile fare il preload dei filmati (per saperne di più basta che fai una ricerca sul Forum), per assicurarti che il caricamento sia completato prima di fare altro e non avere risultati indesiderati.
    Per il tuo secondo filmato, crea un movieclip vuoto che funga da contenitore
    (vedi metodo createEmptyMovieClip)

  6. #6
    Utente di HTML.it
    Registrato dal
    Nov 2000
    Messaggi
    251
    ultima domanda....poi mi arrendo altrimenti...

    ho inserito i due preload all'inizio di ogni movie e difatti prima carica il primo filmato test1.swf e mentre visualizzo il test1 mi parte il preload del secondo.... tutto ok!

    solo che voglio che il secondo movie sia visibile al click di un pulsante.


    nel primo..... frame _global.toframe = 0

    in un frame x il codice del pulsante
    on (press) {
    toframe=1; // variabile globale ke è settata a 0
    setProperty(this, _visible, 0);
    loadMovieNum("test2.swf", 1);
    }

    nel primo frame del secondo movie ho inserito il seguente codice

    if(_level0.toframe==1) {
    setProperty(this, _visible, 1);
    }
    else {
    setProperty(this, _visible, 0);
    }

    NON FUNZIONA!!!

    ti ringrazio e se non è chiaro ci rinuncio

  7. #7
    a parte alcuni riferimenti a proprietà inesistenti,
    vedi: _level0.toframe

    ricorda che qualsiasi tentativo di intervenire sulle proprietà di un movieclip non funziona fintantochè detto movieclip NON è interamente caricato.

    Per questo è necessario il preload.

    Però questo NON ti deve far gettare la spugna.
    Leggiti questo articolo:
    http://flash.html.it/articoli/leggi/...ad-completo/1/

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 © 2024 vBulletin Solutions, Inc. All rights reserved.