Pagina 1 di 2 1 2 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 12
  1. #1

    recuperare nome di istanza (instanceName)

    Ciao a tutti,

    uso Flash 8 e vorrei sapere come posso fare per recuperare il nome di istanza di un bottone al click del mouse su di esso.

    Io ho provato con questa istruzione ma il risultato è "undefine"


    Codice PHP:
    on (release) {
        
    trace("nome bottone = " this.instanceName.toString());

    Grazie
    cammino, cammino fumando,
    e ad ogni passo,
    attraverso il mio fumo,
    mi trovo dove non ero prima,
    sono dove prima espiravo.

  2. #2
    Utente di HTML.it L'avatar di and80
    Registrato dal
    Mar 2003
    Messaggi
    15,182
    il nome della proprietà è semplicemente _name ma bisogna vedere come viene interpretato con il this, questo perchè dentro il pulsante lo scope continua ad essere lo stesso del filmato/clip che lo contiene, se quindi fai

    on(release){
    trace(this._name);
    }

    tracci il nome del clip che contiene il pulsante, ad esempio nel caso che il pulsante stia in _root ottieni come trace _level0

  3. #3
    Acci!!... ho provato ed è proprio quello che succede..

    ho 5 bottoni tutti contenuti in un movieClip con nome di istanza "myMc" e per ogni bottone ho assegnato il codice:

    on(release){
    trace(this._name);
    }

    e il risultato della trace, è sempre lo stesso per ogni bottone, ovvero: "myMc".

    E' possibile invece risalire al nome del bottone?

    GRAZIE!
    cammino, cammino fumando,
    e ad ogni passo,
    attraverso il mio fumo,
    mi trovo dove non ero prima,
    sono dove prima espiravo.

  4. #4
    ..potrei fare anche così:

    mioBtn.onRelease = function() {
    trace("nome bottone = " + this._name);
    }

    in questo caso appare il nome del bottone correttamente.. pero' questa soluzione mi complica un po' la vita e avrei preferito lasciare il codice direttamente associato al tasto..
    cammino, cammino fumando,
    e ad ogni passo,
    attraverso il mio fumo,
    mi trovo dove non ero prima,
    sono dove prima espiravo.

  5. #5
    Utente di HTML.it L'avatar di gobbo89
    Registrato dal
    Jun 2006
    Messaggi
    816
    Al posto dei bottoni potresti usare dei movieClip.
    A partire da flash mx supportano tutti gli eventi dei bottoni e ritornano correttamente il proprio nome istanza...


  6. #6
    Utente di HTML.it L'avatar di and80
    Registrato dal
    Mar 2003
    Messaggi
    15,182
    di fatto non c'è modo di raggiungere l'istanza di un pulsante con la sintassi on(release) a meno che non se ne conosca già il nome

    in finale il codice associato al pulsante è uno strascico del metodo di programmazione precedente, Flash 5 ed MX, ma in finale, almeno secondo me, la progettazione ottimale è quella per cui non si disperde il codice che potrebbe addirittura stare solo nel primo ed unico frame della timeline principale

  7. #7
    Utente di HTML.it L'avatar di and80
    Registrato dal
    Mar 2003
    Messaggi
    15,182
    Originariamente inviato da gobbo89
    Al posto dei bottoni potresti usare dei movieClip.
    A partire da flash mx supportano tutti gli eventi dei bottoni e ritornano correttamente il proprio nome istanza...

    assolutamente corretto, io infatti ho abbandonato i Button quasi subito

  8. #8
    Utente di HTML.it L'avatar di gobbo89
    Registrato dal
    Jun 2006
    Messaggi
    816
    Originariamente inviato da and80
    assolutamente corretto, io infatti ho abbandonato i Button quasi subito
    Anche io...

    [OT]
    Però mi chiedo... Non è che utilizzando indiscriminatamente i MovieClip al posto dei button le dimensioni del file possano crescere senza motivo?
    [/OT]


  9. #9
    Utente di HTML.it L'avatar di and80
    Registrato dal
    Mar 2003
    Messaggi
    15,182
    Originariamente inviato da gobbo89
    Anche io...

    [OT]
    Però mi chiedo... Non è che utilizzando indiscriminatamente i MovieClip al posto dei button le dimensioni del file possano crescere senza motivo?
    [/OT]

    secondo me no, alla fine i metodi e le proprietà vengono caricate tutte quando utilizzi una sola istanza della classe MovieClip, quindi il peso della classe c'è una volta sola, il peso non aumenta per i movieclip presenti, ma per quello che ci metti dentro e per le righe di codice che scrivi per farlo funzionare

  10. #10
    Utente di HTML.it L'avatar di gobbo89
    Registrato dal
    Jun 2006
    Messaggi
    816
    Originariamente inviato da and80
    secondo me no, alla fine i metodi e le proprietà vengono caricate tutte quando utilizzi una sola istanza della classe MovieClip, quindi il peso della classe c'è una volta sola, il peso non aumenta per i movieclip presenti, ma per quello che ci metti dentro e per le righe di codice che scrivi per farlo funzionare
    Ok...
    Però nel frattempo ho fatto una prova:
    ho disegnato un quadrato, e poi l'ho salvato in due file identici.

    Nel primo file ho convertito il quadrato in pulsante, associando un trace("ciao"); nel secondo l'ho convertito in movieClip, sempre assegnando la stessa azione...

    L'swf del pulsante è grande 119 byte
    L'swf del movieclip è grande 126 byte

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.