Visualizzazione dei risultati da 1 a 8 su 8
  1. #1
    Utente di HTML.it L'avatar di meffe
    Registrato dal
    Aug 2005
    Messaggi
    73

    Preload attachMovie e combobox

    Questa può non essere considerata una domanda quanto piuttosto un rompicapo...
    Ho creato un swf che mi deve contenere il mio filmato, al fine di fare il preload senza che parta quando ormai il caricamento è finito.

    Questo è il codice del preloader:
    codice:
    stop();
    var mcListener:Object = new Object();
    mcListener.onLoadProgress = function(target_mc:MovieClip, bytesLoaded:Number, bytesTotal:Number) {
    	var percentual:Number = Math.floor((bytesLoaded/bytesTotal)*100);
    	_root.Percentuale.text = percentual+"%";
    };
    mcListener.onLoadComplete = function(target_mc:MovieClip) {
    _root.gotoAndStop(2);
    };
    mcListener.onLoadError = function(target_mc:MovieClip, errorCode:String) {
    	if (errorCode == "URLNotFound") {
    		trace("Errore, l'immagine non è stata trovata, file sconosciuto");
    	} else if (errorCode == "LoadNeverCompleted") {
    		trace("Errore, caricamento interrotto, probabile sovraccarico del server, riprovare più tardi");
    	} else {
    		trace("Errore generico, il server non ha risposto in tempo, oppure l'immagine risulta danneggiata o non è un'immagine");
    	}
    };
    
    var mcLoader:MovieClipLoader = new MovieClipLoader();
    mcLoader.addListener(mcListener);
    mcLoader.loadClip("flash_obj/xx.swf", myClip);
    Nel secondo frame ho solo uno "stop" con la schermata bianca...
    A questo punto è caricato con il preload il mio filmato che si chiama xx.swf.
    Nel filmato ho dei diversi mc che carico con:
    codice:
    _root.myClip.attachMovie("BarraSopraMC","BarraSopraMC",getNextHighestDepth(),{_x:0, _y:28});
    _root.myClip.attachMovie("WorkspaceMC2","WorkspaceMC2",getNextHighestDepth(),{_x:0, _y:113});
    _root.myClip.attachMovie("BarrasottoMC","BarrasottoMC",getNextHighestDepth(),{_x:0, _y:586});
    E mi carica tutto perfettamente...
    Nel mc WorkspaceMC2 ho un combobox che funziona perfettamente, anzi funzionava perfettamente perchè ora quando provo ad accedervi tramite il browser non mi si apre la tendina del combobox ma se ci clicco sopra mi si evidenzia (con un contorno verde) e non si apre!

    Io penso che sia un problema dovuto all'attachMovie visto che lo faccio su un video attacchato!

    Qualcuno sa aiutarmi???

    meffe

  2. #2
    Utente di HTML.it L'avatar di and80
    Registrato dal
    Mar 2003
    Messaggi
    15,182
    prova ad inserire un ComboBox anche nella libreria del filmato che carica, senza concatenare, nè nient'altro

  3. #3
    Utente di HTML.it L'avatar di meffe
    Registrato dal
    Aug 2005
    Messaggi
    73
    Effettivamente funziona,
    solo che il preloading parte dopo aver caricato la componente combobox (32kb)...
    Meglio di nulla chiaramente ma se si poteva evitare anche quello era meglio!!!

    comunque grazie 1000

  4. #4
    Utente di HTML.it L'avatar di and80
    Registrato dal
    Mar 2003
    Messaggi
    15,182
    certo, basta che a fine caricamento, invece di far andare la timeline del filmato al frame 2, fai direttamente un "rimpiazzo" del filmato, con quello da caricare, utilizzando loadMovieNum("filmato", 0), e questo a tutti gli effetti farà si che il tuo filmato caricato dall'esterno sostituisca quello principale, compreso di timeline (quindi non ci sarà bisogno di riferirsi a myClip per i percorsi, ma si utilizzerà _root)

  5. #5
    Utente di HTML.it L'avatar di meffe
    Registrato dal
    Aug 2005
    Messaggi
    73
    Non funziona questa nuova modifica...
    se puoi prova postarmi il codice che dovrei sostituire, magari ho fatto io un errore...

    meffe

  6. #6
    Utente di HTML.it L'avatar di and80
    Registrato dal
    Mar 2003
    Messaggi
    15,182
    togli questo
    mcListener.onLoadComplete = function(target_mc:MovieClip) {
    _root.gotoAndStop(2);
    };

    e aggiungi questo

    mcListener.onLoadInit = function(target_mc:MovieClip) {
    target_mc.removeMovieClip();
    loadMovieNum("flash_obj/xx.swf", 0);
    };

    ah, ovviamente il codice che si trova sul secondo fotogramma, a questo punto è inutile e deve essere ripetuto sul primo frame del filmato appena caricato

    Codice PHP:
    _root.attachMovie("BarraSopraMC","BarraSopraMC",getNextHighestDepth(),{_x:0_y:28});
    _root.attachMovie("WorkspaceMC2","WorkspaceMC2",getNextHighestDepth(),{_x:0_y:113});
    _root.attachMovie("BarrasottoMC","BarrasottoMC",getNextHighestDepth(),{_x:0_y:586}); 

  7. #7
    Utente di HTML.it L'avatar di meffe
    Registrato dal
    Aug 2005
    Messaggi
    73
    Effettivamente ora funziona,
    posso anche togliere il combobox dal filmato del preload!
    Sorge però un altro problema... i combobox quando si aprono si aprono sotto i campi di testo dinamico... e anche sotto gli altri combobox... come si può vedere nell'immagine...
    questi sono semplicemente stati portati dalla libreria all'mc e sono stati anche portati in primo piano (onde evitare problemi).

    questo è strano!!!

    meffe
    Immagini allegate Immagini allegate

  8. #8
    Utente di HTML.it L'avatar di and80
    Registrato dal
    Mar 2003
    Messaggi
    15,182
    per gestire la profondità dei componenti è necessario utilizzare la classe DepthManager, ma non saprei come funziona esattamente, non ne ho mai avuto necessità

    qui la documentazione -> http://livedocs.adobe.com/flash/8_it/main/00003456.html

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.