Visualizzazione dei risultati da 1 a 9 su 9
  1. #1
    Utente di HTML.it L'avatar di manu9
    Registrato dal
    Jan 2000
    Messaggi
    230

    preload swf esterni in actionscript 1

    ciao a tutti,

    ho questo problema:
    ho caricato un movie con loadMovie(file_incluso.swf,_root.contenitore);

    se poi inserisco queste 2 righe di codice
    _root.car = getBytesLoaded();
    _root.tot = getBytesTotal();

    non mi funziona, come mai?
    vorrei estrapolare i bytes caricati e totali di file_incluso.swf

    qualcuno riesce ad aiutarmi?

    grazie

  2. #2
    Utente di HTML.it L'avatar di NAP
    Registrato dal
    Jan 2001
    Messaggi
    4,398
    Se, come dici alla lettera, hai messo solo le "righe", è ovvio che non ottieni nulla di visibile. Voglio dire che "car" e "tot" sono (occorre che siano) dua campi di testo dinamico con nomeVariabile: car e tot. Difatti in AS1 si davano ai campi solo nomi di variabile. Da AS2 in poi si danno nomiIstanza.

    Esistono quei due campi?
    Se sì, ce l'hanno i nomiVariabile?
    Ancora: dove si trovano?

    Inoltre: i due get funzionano soltanto nel (e per) il file principale, vale a dire per il file con cui, tramite il loadMovie, stai caricando il file esterno.
    Spiega meglio "dove" hai messo quelle due righe.
    A volte la diplomazia va condita con un pizzico di siluri fotonici. (K. Janeway)

  3. #3
    Utente bannato
    Registrato dal
    Jan 2009
    Messaggi
    713

    qualkosa tipo questo può servire?

    http://max400scuola.altervista.org/a...d-in-clip3.htm

    - in basso a sinistra ti da la percentuale dei byte che si stanno caricando
    - in basso a destra il totale dei byte del file caricato

    il clip su cui è caricato il file.swf è di tipo dinamico
    è molto importante conoscere le dimensioni di un file che stiamo caricando
    dimodochè se è un file troppo "pesante"... allora interrompiamo il caricamento...
    specie per chi ha una connesione lenta... o chi si collega con un cellulare...

    au revoir
    ____________
    by max




    PS2: ciao NAP!!
    Immagini allegate Immagini allegate

  4. #4
    Utente di HTML.it L'avatar di manu9
    Registrato dal
    Jan 2000
    Messaggi
    230
    grazie ragazzi del supporto, però mi spiego meglio

    all'interno di un file SWF che chiameremo file_contenitore, al primo frame ho:
    loadMovie("file_incluso.swf",_root.contenitore);

    effettivamente lo carica perchè quando pubblico il file_contenitore, il file_incluso viene visualizzato, e fin qui tutto ok.

    Dopodichè al secondo frame ho queste righe di comando:

    _root.car = _root.contenitore.getBytesLoaded();
    _root.tot = _root.contenitore.getBytesTotal();
    _root.perc = Int((_root.car*100)/_root.tot);
    _root.progres = _root.perc+"%";
    setProperty("barra", _xscale, _root.perc);
    if (_root.car == _root.tot) {
    gotoAndPlay(5);
    }

    car e tot li ho anche inseriti come campo di testo dinamico, ma danno dei valori assolutamente sballati (anche questi non ho problemi a visualizzarli), mi sa tanto che la chiamata _root.contenitore.getBytesLoaded(); non funziona granchè.
    A me basterebbe che l'actionscript riuscisse a estrapolare il peso dei kilobyte caricati e totali del file_incluso.swf, o volendo anche di file_contenitore.swf con il file_incluso già caricato, in modo da procedere con l'animazione solo nel caso in cui il file_incluso (che è quello grosso, contenente un filmato) sia caricato completamente. Non mi interessa tanto avere il peso del file_contenitore perchè è un semplice esecutore di script e pesa una schiocchezza.
    grazie!

  5. #5
    Utente bannato
    Registrato dal
    Jan 2009
    Messaggi
    713

    mi sembra logico che non funzioni

    mi sa tanto che la chiamata _root.contenitore.getBytesLoaded(); non funziona granchè.
    A me basterebbe che l'actionscript riuscisse a estrapolare il peso dei kilobyte caricati e totali del file_incluso.swf,
    getBytesLoaded(); va dentro il file che si sta caricando e non al 2° fotogramma...della root.. e ti dice i byte del filmato che si stanno caricando e non quelli già caricati

    una cosa è il filmato principale altra cosa è il secondario che viene caricato dal principale

    nel 1° fotogramma del principale hai messo lo stop?

  6. #6
    Utente di HTML.it L'avatar di manu9
    Registrato dal
    Jan 2000
    Messaggi
    230
    graziee!!!!

    io però ho usato questo sistema perchè mi sono stati pervenuti degli SWF già pubblicati, e proprio per questo non potevo intervenire, non c'è modo quindi di comandarli da un file chiamante?

  7. #7
    Utente bannato
    Registrato dal
    Jan 2009
    Messaggi
    713

    ehm devo rettificare quanto ho detto prima

    le caselle dinamiche che esprimono il valore getbyteload e get byteTotal sono messi nella root
    però nel 1° fotogramma e dentro un clip lo script è il seguente:

    messo dentro il clip
    codice:
    onClipEvent (load){
    _root.createEmptyMovieClip("placeholder", 1);
    _root.placeholder.loadMovie("veline3.swf");
    }
    onClipEvent (enterFrame){
    total = _root.placeholder.getBytesTotal();
    consumo=total;
    loaded = _root.placeholder.getBytesLoaded();
    trace(loaded);
    _root.placeholder._visible=true;
    percent = int(loaded / total * 100);
    text = percent + "%";
    if (percent == 100){
    	//_root.placeholder.unloadMovie();
    if (loaded == total){
    //_root.placeholder.unloadMovie();
    _root.play();
    }
    }
    }
    il fla (il file sorgente lo trovi qui)
    http://max400.forumfree.it/?t=45642633

  8. #8
    Utente di HTML.it L'avatar di manu9
    Registrato dal
    Jan 2000
    Messaggi
    230
    grazie!

    provo e vi so dire!

  9. #9
    Utente di HTML.it L'avatar di manu9
    Registrato dal
    Jan 2000
    Messaggi
    230
    funziona alla grande!!!
    vi ringrazio infinitamente!

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.