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

    [MX] Differenza fra esecuzione in locale e in linea

    Ho un problema che credo riguardi il preload del filmato, ma non so come porvi rimedio.

    La situazione è questa: se lancio il filmato in locale funziona tutto perfettamente, mentre dal web succede che si sentono alcuni suoni e si vedono alcune animazioni la cui esecuzione dovrebbe invece essere stoppata. In pratica, nell'ultima frame di un clip c'è un suono e un'animazione, mentre nella prima frame c'è un bello stop(), lanciando il filmato dal web sembra che questo stop() venga ignorato.
    La cosa che mi fa pensare a un problema di preload sta nel fatto che questo errore si verifica soltanto al primo caricamento della pagina: quando infatti il filmato è in cache e si aggiorna la pagina, il problema scompare.

    Sapete come aiutarmi? Grazie

  2. #2

    Hai controllato bene la sintassi?

    Anche a me una volta è capitato qualcosa di simile, era un errore di sintassi dello script del preload, un semplice spazio dove non andava messo ne aveva compromesso il funzionamento, hai controllato bene la sintassi? quella giusta è:
    codice:
    //Assegno i valori
    car = _root.getBytesLoaded();
    tot = _root.getBytesTotal();
    larghezza = 100; //Sostituire con il valore di scalatura
    
    //Calcolo la percentuale di avanzamento
    perc = (car*100)/tot 
    
    //Inserisco nella casella di testo il totale percentuale
    progres = perc + "%";
    
    //Allungo la barra e la posiziono in modo fisso sull'asse X
    setProperty("barra", _xscale, (perc*larghezza)/100);
    
    //Controllo lo stato di avanzamento
    if (car == tot) {
      gotoAndPlay("immagine");
    }
    Mi scoppia la testa.

  3. #3

    Sintassi

    Ha quella sopra chiaramente è la sintassi x preload con barra in flash mx 2004
    Mi scoppia la testa.

  4. #4
    No, ho un preload minimale, il problema non penso sia di questo tipo. Tanto per chiarezza, scrivo il codice del mio preload (sullo stage non c'è niente):

    1° frame
    depth1 = 0;
    depth2 = 1000000;
    depth1++;
    _root.createEmptyMovieClip("preload_deco", depth1);
    with (preload_deco) {
    lineStyle (1, 0x000066, 100);
    moveTo (100, 0);
    lineTo (100, 600);
    moveTo (0, 500);
    lineTo (800, 500);
    }
    preload_format1 = new TextFormat();
    preload_format1.color = 0x000066;
    preload_format1.font = "Arial";
    preload_format1.bold = true;
    preload_format1.size = 20;
    preload_format2 = new TextFormat();
    preload_format2.color = 0x000066;
    preload_format2.font = "Arial";
    preload_format2.bold = true;
    preload_format2.size = 15;
    preload_format2.align = "right";
    depth1++;
    _root.createTextField("preload_text1", depth1, 115, 470, 300, 30);
    preload_text1.text = "P l e a s e W a i t . . .";
    preload_text1.embedFonts = true;
    preload_text1.selectable = false;
    preload_text1.setTextFormat(preload_format1);
    depth1++;
    _root.createTextField("preload_text2", depth1, 115, 510, 80, 23);
    preload_text2.text = "Loaded:";
    preload_text2.embedFonts = true;
    preload_text2.selectable = false;
    preload_text2.setTextFormat(preload_format2);
    depth1++;
    _root.createTextField("preload_text3", depth1, 115, 540, 80, 23);
    preload_text3.text = "Total:";
    preload_text3.embedFonts = true;
    preload_text3.selectable = false;
    preload_text3.setTextFormat(preload_format2);


    2° frame
    par = _root.getBytesLoaded();
    tot = _root.getBytesTotal();
    if (par == tot)
    {
    delete par;
    delete tot;
    delete parx;
    delete totx;
    preload_deco.unloadMovie();
    preload_text1.removeTextField();
    preload_text2.removeTextField();
    preload_text3.removeTextField();
    preload_text4.removeTextField();
    preload_text5.removeTextField();
    depth1 = 0;
    gotoAndPlay('setup');
    }
    parx = Math.round(par/1000)+' KB';
    totx = Math.round(tot/1000)+' KB';
    depth1++;
    _root.createTextField('preload_text4', depth1, 230, 510, 55, 23);
    preload_text4.text = parx;
    preload_text4.embedFonts = true;
    preload_text4.selectable = false;
    preload_text4.setTextFormat(preload_format2);
    depth1++;
    _root.createTextField('preload_text5', depth1, 230, 540, 55, 23);
    preload_text5.text = totx;
    preload_text5.embedFonts = true;
    preload_text5.selectable = false;
    preload_text5.setTextFormat(preload_format2);
    depth1 -= 2;

    3° frame
    gotoAndPlay("preload");


    Avete qualche idea?

  5. #5
    ma si deve fermare quindi ma sembra di vedere una cosa strana nel tuo codice

    2° frame
    par = _root.getBytesLoaded();
    tot = _root.getBytesTotal();
    if (par == tot)
    {
    delete par;
    delete tot;
    delete parx;
    delete totx;
    preload_deco.unloadMovie();
    preload_text1.removeTextField();
    preload_text2.removeTextField();
    preload_text3.removeTextField();
    preload_text4.removeTextField();
    preload_text5.removeTextField();
    depth1 = 0;
    gotoAndPlay('setup'); }

    non dovrebbe essere gotoAndStop('setup'); ?!
    la verità non è una meretrice che si getta al collo di chi non la vuole ma anzi essa è dotata di una così altera bellezza che anche chi sacrifica tutto per ottenerla non è sicuro di averla raggiunta !

  6. #6
    No, si deve fermare un clip, non la timeline principale.
    Al 21° frame della timeline principale c'è un clip, che ha nel suo 1° frame uno stop(). Nonostante questo, al momento in cui il filmato arriva a questo 21° frame si sente il suono che il clip ha in un suo frame successivo. Invece, data la presenza dello stop(), non dovrebbe sentirsi.
    Mi sono spiegato meglio?

  7. #7
    Ho risolto il problema aggirandolo (anche se non ho ancora capito cosa c'era che non andava). Grazie comunque per l'aiuto.

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.