Pagina 1 di 2 1 2 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 19
  1. #1
    Utente di HTML.it
    Registrato dal
    Sep 2002
    Messaggi
    477

    passare a funzione un valore del campo di testo

    Vediamo se riesco a spiegarmi...
    sulla timeline ho una funzione che crea campi di testo in base al pulsante (anch'esso creato dinamicamente) che viene cliccato, al fine di creare un sottomenu.
    Sempre sulla timeline ho una serie di oggetti che hanno lo stesso nome dei pulsanti del menu principale.
    es. se il pulsante del menu principale ha nel campo di testo "prodotti", nella timeline avrò un oggetto

    prodotti=["prod1", "prod2", "prod3"]

    La funzione che crea i sottomenu ha come variabile l'oggetto, in modo tale che acquisisca il valore (testo) del pulsante cliccato.

    ecco la funzione, per capirci meglio:

    codice:
    function crea(sottomenu) {
    	for (i=0; i<sottomenu.length; i++) {
    		duplicateMovieClip(itemsub, "itemsub"+i, i);
    		this["itemsub"+i].camposub = sottomenu[i];
    		this["itemsub"+i]._y = this.itemsub._y+(28*i);
    	}
    }
    questa funzione viene richiamata dai pulsanti del menu principale e, in base al contenuto del campo di testo di questi pulsanti, dovrebbe sostituire alla variabile "sottomenu" il contenuto del proprio campo di testo. In poche parole se clicco il pulsante "prodotti" la variabile "sottomenu" deve prendere valore "prodotti".

    Il problema è che non riesco ad assegnare il valore alla variabile della funzione con questo script (sul pulsante):

    codice:
    on (release){
    _root.crea(this.campo)
    //campo è il nome del campo di testo
    }
    Perchè???

    Spero di essermi spiegato....vi prego, aiutatemiii

  2. #2
    codice:
    on (release){
    _root.crea(this.campo.text);
    //campo è il nome del campo di testo
    }

  3. #3
    Utente di HTML.it
    Registrato dal
    Sep 2002
    Messaggi
    477
    già provato.

  4. #4
    prova senza this

    ossia

    codice:
    on (release){
         _root.crea(campo.text);
    }
    se non funziona fai qualche trace del tipo:
    codice:
    on (release){
         trace(campo._name);
         _root.crea(campo.text);
    }
    e vedi cosa ti restituisce

    regalami un oggi da favola...e il domani bhe!?non mi importa se tu 6 con me! ©Ily

  5. #5
    Utente di HTML.it
    Registrato dal
    Sep 2002
    Messaggi
    477
    Ho provato senza "this" ma non va, col trace mi da indefinito....e sento una risatina provenire dal CPU

    'nnaggia

  6. #6
    Originariamente inviato da Zippo
    Ho provato senza "this" ma non va, col trace mi da indefinito....e sento una risatina provenire dal CPU

    'nnaggia
    se con il trace ti da undefined significa che il percorso del campo di testo è errato

    inserisci il percorso esatto del del campo di testo

    regalami un oggi da favola...e il domani bhe!?non mi importa se tu 6 con me! ©Ily

  7. #7
    Utente di HTML.it
    Registrato dal
    Sep 2002
    Messaggi
    477
    non credo ho provato addirittura a scrivere il percorso per esteso (_root.pulsante.campo._name) ma non và.

    Ma _name non serve a rilevare il nome istanza? Il mio campo di testo non ha nome istanza, ha solo il nome variabile.
    Inoltre se scrivo trace(this.campo) l'output mi dà tutti i nomi.

    :master:

  8. #8
    Originariamente inviato da Zippo
    non credo ho provato addirittura a scrivere il percorso per esteso (_root.pulsante.campo._name) ma non và.

    Ma _name non serve a rilevare il nome istanza? Il mio campo di testo non ha nome istanza, ha solo il nome variabile.
    Inoltre se scrivo trace(this.campo) l'output mi dà tutti i nomi.

    :master:
    pensavo avessi impostato il nome di istanza


    allora se premi sul pulsante e facendo "trace(this.campo)" ti stampa il nome del campo, il problema sta nella function

    quindi fai un trace nella function prima del ciclo for e vedi se ti passa il valore (trace(sottomenu))

    regalami un oggi da favola...e il domani bhe!?non mi importa se tu 6 con me! ©Ily

  9. #9
    Originariamente inviato da Zippo
    non credo ho provato addirittura a scrivere il percorso per esteso (_root.pulsante.campo._name) ma non và.

    Ma _name non serve a rilevare il nome istanza? Il mio campo di testo non ha nome istanza, ha solo il nome variabile.
    Inoltre se scrivo trace(this.campo) l'output mi dà tutti i nomi.

    :master:
    Se quello che hai scritto è vero non funzionerà mai, non puoi comendare i clip all'interno dei bottoni.

  10. #10
    Originariamente inviato da jeck
    Se quello che hai scritto è vero non funzionerà mai, non puoi comendare i clip all'interno dei bottoni.
    non mi pare che voglia comandare dei clip all'interno dell'pulsante :master:

    lui vuole richiamare una funzione e passargli il nome di variabile del campo di testo che sta dentro al pulsante. (spero di aver capito bene )

    regalami un oggi da favola...e il domani bhe!?non mi importa se tu 6 con me! ©Ily

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.