Visualizzazione dei risultati da 1 a 2 su 2
  1. #1
    Utente di HTML.it L'avatar di brumac
    Registrato dal
    Jul 2003
    Messaggi
    187

    Problema getBytesLoaded

    Ciao,
    vi pongo brevemente il problema:

    metto un file swf in una pagina html.
    il filmato è composto da 2 layer, il primo con un suono mp3 e il secondo con un serie di immagini; il video vero e proprio comincia al 3° frame. ho tenuto i primi 2 frame per il preload.

    nel primo frame ho inserito il seguente script:

    valore1.text = (_root.getBytesLoaded() ; //casella testo dinamico
    if(_root.getBytesLoaded() == _root.getBytesTotal()){
    gotoAndPlay(3);
    }

    nel secondo frame invece:

    valore1.text = (_root.getBytesLoaded() ;
    gotoAndPlay(1);

    non capisco perchè nn funziona???

    grazie a tutti VVoVe:

  2. #2
    Ho appena risposto ad un thread che, più o meno, chiedeva la stessa cosa tua ... copia/incolla ruleZ
    il codice per un semplice preload, associato ad un movieclip, è il seguente:


    code:--------------------------------------------------------------------------------
    onClipEvent (load) {
    _root.stop();
    }
    onClipEvent (enterFrame) {
    if (_root.getBytesLoaded() == _root.getBytesTotal()) {
    _root.gotoAndPlay(2);
    }
    perc = barra._xscale = Math.round((_root.getBytesLoaded()/_root.getBytesTotal())*100);
    percentuale = perc + "%";
    }
    --------------------------------------------------------------------------------

    Il tuo movieclip "preloader" conterrà al suo interno un altro mc di una barra (nome istanza barra), a cui setterai inizialmente, tramine il pannello transform, una scalatura in larghezza dello 0% (in realtà meno di 0.3% non ci va, ma cmq basta e avanza) e una casella di testo dinamico a cui assocerai come variabile percentuale.
    L'azione associata all'enterFrame non fa altro che verificare se i byte caricati corrispondono a quelli totali del filmato (quando i valori si equivalgono, fa partire il filmato) e incrementare la larghezza della barra a seconda del caricamento ... più ovviamente la casella dinamica che restituirà l'avanzamento della percentuale del caricamento stesso.

    P.S. Ti conviene crearti una scena antecedente a quella principale dove mettere il movieclip preloader, senza che stai a spostare tutto di un frame.
    Per quanto riguarda il tuo codice non funziona perchè ci sono vari errori, primo fra tutti che mancano 2 parentesi tonde e gli stop ... poi è sbagliata anche la visualizzazione del risultato sulla casella dinamica, se funzionasse vedresti appunto i bytes caricati e non i Kbytes (che per ottenerli devi dividere per 1024 e usare il Math.round affinchè ti arrotondo il numero ad un intero).
    Insomma fai prima a rifarlo così

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.