Visualizzazione dei risultati da 1 a 9 su 9
  1. #1

    Problema preload con frame

    Ciao a tutti.
    Dopo lunghe ricerche su come risolvere il problema che mi assilla, mi vedo costretto a disturbarvi.
    Allora incomincio con il spegarvi un po' la situazione generale.
    Io uso flash 8. Sto creando un sito così strutturato: c'è un swf principale (al livello 0) dove è contenuto il menu, cliccando in una delle voci del menu si carica un filmato "swf" esterno (al livello 1) dove è contenuto il materiale riguardante la sezione che si è cliccato.
    Ogni swf è diviso in 2 scene: nella prima è contenuto il preload, nella seconda ovviamente il contenuto vero e proprio.
    Ora veniamo al problema.
    Nel swf principale (livello 0) tutto ok, il preload funziona perfettamente, quindi nn ci interessa.
    Quello che mi interessa è il swf che viene caricato (quello al livello 1 per intenderci).
    Quello che mi interessa è che oltre alla normale barra che scorre, voglio che che faccia avanzare frame per frame (in base al caricamento) un movie clip posto nel swf principale (livello 0).
    Praticamente il movieclip consiste in una rosa che sboccia, e il clip è suddiviso in frame.
    Il codice che ho usato nel preload del swf caricato al livello 1 è il seguente:

    Frame 1:

    car = _level0.getBytesLoaded();
    tot = _level0.getBytesTotal();
    larghezza = 100;
    perc = Math.round((car*100)/tot);
    setProperty("barra", _xscale, (car/tot)*100);
    setProperty("barra", _x, 309.7);
    _level0._root.rosa.play = Math.round((car*100)/tot);
    if (car == tot) {
    gotoAndPlay("Scena 2", 1);
    }


    Frame 2:

    gotoAndPlay(1);


    Ma con questo codice non funziona, la rosa rimane ferma al frame 1 e non parte.
    Certo non mi aspettavo che funzionasse, perchè è la prima volta che prova a fare una cosa del genere, ma anche facendo varie ricerche non reisco a capire come poter risolvere il problema.
    Perciò mi appello alla vostra infinita conoscenza!!

    Ah un'altra cosa veloce.
    Come mai nel preload del swf principale non ci sono problemi, mentre nel preload del swf al livello 1 compare solo dopo il 98% di caricamento o addirittura si fa vedere solo quando ha caricato tutto, e poi mi blocca il contenuto della scena seguente, come una finestra trascinabile che rimane bloccata al centro e senza preload invece funziona correttamente?? Premetto che i 2 preload sono identici in tutto per tutto, dalla grafica allo script.

    Vi ringrazio anticipatamente sperando di essere stato chiaro nel esporre il mio problema.
    L'uomo inciampa per imparare a rialzarsi.

  2. #2
    Quanti frame ha il filmato con la rosa?

  3. #3
    Utente di HTML.it L'avatar di and80
    Registrato dal
    Mar 2003
    Messaggi
    15,182
    prova così anche se il codice è molto vecchio...

    codice:
    car = this.getBytesLoaded();
    tot = this.getBytesTotal();
    larghezza = 100;
    perc = Math.round((car*100)/tot);
    setProperty("barra", _xscale, (car/tot)*100);
    setProperty("barra", _x, 309.7);
    this.rosa.play = Math.round((car*100)/tot);
    if (car == tot) {
    gotoAndPlay("Scena 2", 1);
    }

  4. #4
    credo che il controllo giusto sia qualcosatipo

    _level0._root.rosa.gotoAndStop = Math.round((car/tot*_level0._root.rosa._totalframes);

    (target giusti permettendo)

  5. #5
    Allora i frame sono 62.
    Ora proverò i vostri consiglio e vediamo cosa succede.
    Per ora vi ringrazio.

    Ah qualche d'uno mi riescie a chiarire il problema descritto alla fine del messaggio precedente riguardo il preload?
    Grazie ancora a tutti

    _________________________________________________-

    Alloa ho povato proprio ora.
    Quello suggerito da and80 non funziona, ma ti ringrazio lo stesso.
    Mentre quello di stand ha qualche problema, il filmato della rosa parte ma quando ha finito il caircamento e scorre normalmente come un flmato normale.
    Bisogna trovare una soluzione che faccia partire la rosa durante il caircamento e che la durata del flmato sia lungo come il caricamento.
    Per ora vi ringrazio aspettando altre illuminazioni.
    Cmq continuo a cercare sperando di trovare qualche cosa.
    L'uomo inciampa per imparare a rialzarsi.

  6. #6
    Utente di HTML.it L'avatar di and80
    Registrato dal
    Mar 2003
    Messaggi
    15,182
    Originariamente inviato da drummer720
    Quello suggerito da and80 non funziona, ma ti ringrazio lo stesso.
    molto strano, da come l'hai descritto i percorsi son quelli, se carichi su _level1, dovrai verificare il caricamento di _level1

  7. #7
    Ma il codice che hai copiato, viene ciclato, dove sta?
    Ma pare di aver capito che quel codice parte solo dopo che è stato caricato tutto

    codice:
    _root.onEnterFrame = function(){
      car = _level0.getBytesLoaded();
      tot = _level0.getBytesTotal();
      larghezza = 100;
      perc = Math.round((car*100)/tot);
      setProperty("barra", _xscale, (car/tot)*100);
      setProperty("barra", _x, 309.7);
    _level0._root.rosa.gotoAndStop = Math.round((car/tot*_level0._root.rosa._totalframes);
      if (car == tot) {
      gotoAndPlay("Scena 2", 1);
      }
    }
    Dovrebbe essere una cosa tipo questa

  8. #8
    Ragazzi ho risolto!!!! Finalmente!!!
    Allora ho cambiato proprio sistema di preload, usando questo codice:

    onClipEvent (load) {
    _visible = false;
    _root.Stop();
    kbTotali = Math.round(_root.getBytesTotal()/1024);
    }
    onClipEvent (enterFrame) {
    if (_root.getBytesLoaded()>=_root.getBytesTotal()) {
    _root.nextFrame();
    }
    _visible = true;
    kbCaricati = Math.round(_root.getBytesLoaded()/1024);
    percentuale = Math.round((kbCaricati/kbTotali)*100);
    barra._xscale = percentuale;
    _level0._root.rosa.gotoAndPlay(percentuale);
    }


    In questa maniera funziona, anche se ha ancora un problemino.
    Infatti quando finisce di caricare, il movieclip della rosa, posto sul livello0, riparte per poi fermarsi definitivamente, ma io voglio che finito il preload si stoppi senza ripartire nuovamente.
    Dove sbaglio??
    Il clip della rosa e composto da 62 frames dova al 1° c'è uno "stop();" altrimenti il clip partirebbe subito appena si apre il filmato principale e poi un altro "stop();" all'ultimo frames per così poi non far ripartire il clip una volta arrivato alla fine, ma così non sembra!!!

    Grazie per il vostro aiuto. Siete gentilissimi
    L'uomo inciampa per imparare a rialzarsi.

  9. #9
    Niente risolto tutto.
    Il problema di prima era solo frutto di una distrazione e di troppa fretta!!!
    Ragazzi vi ringrazio cmq per il vostro aiuto.
    Grazie mille.

    Ciao
    L'uomo inciampa per imparare a rialzarsi.

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