HTML.it è il sito italiano del web publishing

trovare il nome di una serie di bottoni istanziati



scegli un altro forum
    Indietro   Ricarica   Avanti Invia una risposta

Autore
Discussione     
superbau
Utente di HTML.it



Registrato il: Apr 2001

Provenienza: Vicenza

Messaggi: 260


ICQ:

MSN:

Skype: verro76


trovare il nome di una serie di bottoni istanziati
salve, ho molti punlsanti uguali che mi formano una griglia 12x12
i pulsanti hanno tutti il valore del nome istance: cel001 -cel002 ecc..

il problema è che che non riesco a far riferimento al singolo bottone senza richiamare il suo nome istanziato. Siccome i pulsanti son tanti, volevo fare uno script ( con actionscript 2.0) che al click mettesse dentro ad una variabile il nome del pulsante cliccato, ma non riesco a farlo.

con un esempio di script riferito alla cella: cel002 forse riesco a spiegarmi meglio:

codice PHP:

//questo non funziona
on (press) {
    
_root.cella this._name;
    
setProperty(Object(_root).mc1_x_root.cella._x);
    
setProperty(_root.mc1_y_root.cella._y);
}
//questo funziona
on (press) {
    
_root.cella cel002;
    
setProperty(Object(_root).mc1_x_root.cella._x);
    
setProperty(_root.mc1_y_root.cella._y);
}

ecco, il primo script è quello che mi interessa, ovvero che mi trovi da solo il nome della cella, ma non va

Segnala ad un moderatore | IP: Collegato | Permalink

superbau è offline Old Post 12-03-2012 18:53
Clicca qui per vedere il profilo dell'utente superbau Clicca qui per inviare all'utente superbau un messaggio privato Visita l'homepage dell'utente superbau Visualizza ulteriori messaggi scritti dall'utente superbau Aggiungi l'utente superbau alla tua lista degli utenti amici Modifica / Cancella il messaggio Rispondi quotando   Torna su
and80
Utente di HTML.it



Registrato il: Mar 2003

Provenienza:

Messaggi: 15187


ICQ :

MSN :

Skype :


Purtroppo in quel modo non è possibile gestire il nome del pulsante cliccato, quando si usa il codice direttamente sul pulsante il risultato di this è la timeline che lo contiene.
Dovresti scrivere il codice sulla timeline.
Il tuo caso si risolve con un semplice ciclo:

codice PHP:

for (var i:Number=0i<144i++) {
    var 
puls _root["cell"+i];
    
puls.onPress = function () {
        
_root.mc1._x this._x;
        
_root.mc1._y this._y;
    }
}


In questo modo, oltre a risolvere il problema, risparmi anche una notevole mole di lavoro, considerato che altrimenti dovresti scrivere il codice in ogni singolo pulsante.
Ho messo 144 come numero perché hai detto che la griglia è di 12x12 pulsanti, però se fosse diverso ti basterà cambiare il numero nel ciclo.

Addirittura, se i pulsanti fossero tutti uguali, si potrebbe pensare di creare la griglia direttamente runtime, senza doverli copiare e posizionare uno per uno, manualmente.

Un ultimo suggerimento, nel messaggio scrivi che lavori con AS2, ma setProperty è una funzione deprecata già da as1, in favore della sintassi col punto.


__________________
REGOLAMENTO ACTIONSCRIPT!

Segnala ad un moderatore | IP: Collegato | Permalink

and80 è offline Old Post 16-03-2012 10:29
Clicca qui per vedere il profilo dell'utente and80 Clicca qui per inviare all'utente and80 un messaggio privato Visualizza ulteriori messaggi scritti dall'utente and80 Aggiungi l'utente and80 alla tua lista degli utenti amici Modifica / Cancella il messaggio Rispondi quotando   Torna su
superbau
Utente di HTML.it



Registrato il: Apr 2001

Provenienza: Vicenza

Messaggi: 260


ICQ :

MSN :

Skype : verro76


grazie

Segnala ad un moderatore | IP: Collegato | Permalink

superbau è offline Old Post 17-03-2012 02:34
Clicca qui per vedere il profilo dell'utente superbau Clicca qui per inviare all'utente superbau un messaggio privato Visita l'homepage dell'utente superbau Visualizza ulteriori messaggi scritti dall'utente superbau Aggiungi l'utente superbau alla tua lista degli utenti amici Modifica / Cancella il messaggio Rispondi quotando   Torna su
Tutte le ore sono con fuso orario CET. Ora sono le 12:57.     

    Ultima discussione   Prossima discussione Invia una risposta
Versione per la stampa | Invia il thread via email | Ricevi aggiornamenti sul thread | Scarica il thread
 

Cerchi un argomento specifico e hai fretta? Usa il motore di ricerca