Visualizzazione dei risultati da 1 a 5 su 5
  1. #1
    Utente di HTML.it
    Registrato dal
    Oct 2006
    Messaggi
    26

    loadMovie, accesso ai componenti

    Ciao a tutti, ho un problema (se no non scriverei... )

    Ho creato un Persona.fla che contiene qualche dynamic text (istanze persName e persDescr) e un accordion (istanza persAcc), dopodichè l'ho compilato e ho ottenuto Persona.swf.
    Ora ho creato un file Dipendenti.fla che contiene una serie di pulsanti (uno per ogni dipendente) alla pressione di ognuno dei quali viene caricato in un EmptyMovieClip (emc) il movie Persona.swf. Naturalmente una volta che ho caricato Persona.swf (emc.loadMovie("Persona.swf")) devo accedere ai nomi dei componenti per settarli in base al dipendente selezionato. Facendo però emc.persName.text = "Mario Rossi" la dynamic text corrispondente non visualizza nulla! Facendo un trace di emc.persName mi da undefined.
    Come faccio a caricare Persona.swf dentro Dipendenti.fla e accedere anche ai suoi componenti? Ho provato anche ad utilizzare un MovieClipLoader con il metodo loadClip ma nulla. Ho provato anche a mettere dei lockroot, ma nulla!

    Aiutatemi!

    Ciao

  2. #2
    Ricapitolo perchè mi sono perso con il termine componenti


    tu hai un fla che contiene 2 campi dinamici

    persName
    persDesc

    E questi sono i nomi delle istanze che hai dato ai campi dinamici

    il fla viene compilato con Persona.swf

    da Dipendenti.fla carichi dentro emc Persona.swf con

    emc.LoadMovie("Persona.swf")

    Hai inserito un preload di Persona.swf e ti sei accertato che il file sia stato caricato completamente prima di assegnare

    emc.persName.text = "pippo" ??

    potrebbe essere che la lettura del codice sia più veloce del caricamento e quindi non trovare ancora l'istanza.

    Ciao

  3. #3
    Utente di HTML.it
    Registrato dal
    Oct 2006
    Messaggi
    26
    Il tuo riassunto è perfetto!

    Ho provato ad utilizzare un MovieClipLoader, a cui ho associato una funzione listener onLoadComplete dentro cui imposto emc.persName.text = "pippo", ma il problema rimane. La documentazione di flash dice che il loader viene sostituito dal clip che viene caricato, quindi i campi dinamici dovrebbero essere visti e invece nulla.

    Non so veramente cos'altro fare!

  4. #4
    veramente a me funziona....
    codice:
    this.createEmptyMovieClip("emc",1)
    emc.loadMovie("Persona.swf")
    this.onEnterFrame=function(){
    	
    	if(this.emc.getBytesLoaded() == this.emc.getBytesTotal() && this.emc.getBytesLoaded()>1){
    		assegna()
    		delete this.onEnterFrame
    		
    	}
    }
    
    function assegna(){
    	emc.Name.text="Pippo"
    }

  5. #5
    Utente di HTML.it
    Registrato dal
    Oct 2006
    Messaggi
    26
    Ho provato la tua soluzione con onEnterFrame e funziona!!!!! Certo che però flash a volte è un vero bastardo!!!
    Grazie mille rempox, non so quando ne sarei uscito senza di te!

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.