- Home
- Categorie
- Digital Marketing
- Grafica, Visual Design & UX
- as3 - rimuovere un' istanza
-
as3 - rimuovere un' istanza
Salve , sto diventando matto per cercare di rimuovere un' istanza da actionscript 3 per flash cs6.
La logica e' che quando schiaccio un bottone (button1) mi carica un' istanza(c1) , e fin qui nessun problema
button1.addEventListener(MouseEvent.CLICK, fl_MouseClickHandler_6);
function fl_MouseClickHandler_6(event:MouseEvent):void
{
var fl_MyInstance_2:c1 = new c1();
addChild(fl_MyInstance_2);
}ora , quando schiaccio il pulsante2 (button2) mi deve scaricare l'istanza c1 e caricare l'stanza c2.
Chi e' cosi' gentile da aiutarmi ???
buona giornata
-
Ciao benvenuto sul Forum GT, prova così:
var fl_MyInstance_1:c1 = new c1(); var fl_MyInstance_2:c2 = new c2(); button1.addEventListener(MouseEvent.CLICK, fl_MouseClickHandler_1); function fl_MouseClickHandler_1(event:MouseEvent):void { if(this.contains(fl_MyInstance_2)) removeChild(fl_MyInstance_2); addChild(fl_MyInstance_1); } button2.addEventListener(MouseEvent.CLICK, fl_MouseClickHandler_2); function fl_MouseClickHandler_2(event:MouseEvent):void { if(this.contains(fl_MyInstance_1)) removeChild(fl_MyInstance_1); addChild(fl_MyInstance_2); fl_MyInstance_2.x=100 }
-
grazie mille , il codice funziona , visto sche sei bravissimo , ti vorei chiedere se e'
possibile salvare esempio una distinta con dei nomi che io ho inserito , su di un file pippo
in modo che io ogni volta che apro il file pippo ho già la distinta compilata ,mentre se la voglio vuota
apro il file pappa........spero che mi hai capito.grazie
-
Ho visto la tua domanda su un altro Forum, Si può salvare in un file txt o un database mysql o in un file xml, ma a te serve per un app Android quindi credo di no.
-
ciao Nathan , e se avessi 3 variabili con tre pulsanti ? sto diventando matto per risolvere questo problema.....
-
Ho provato con sto codice , ma mi da il seguente errore
ArgumentError: Error #2025: The supplied DisplayObject must be a child of the caller.
at flash.display::DisplayObjectContainer/removeChild()
at istanza1_fla::MainTimeline/fl_MouseClickHandler_3()[istanza1_fla.MainTimeline::frame1:31]var fl_MyInstance_1:quadro = new quadro();
var fl_MyInstance_2:cerchio = new cerchio();
var fl_MyInstance_3:triangolo = new triangolo();button1.addEventListener(MouseEvent.CLICK, fl_MouseClickHandler_1);
function fl_MouseClickHandler_1(event:MouseEvent):void
{
if(this.contains(fl_MyInstance_2),(fl_MyInstance_3))
removeChild(fl_MyInstance_2),(fl_MyInstance_3);
addChild(fl_MyInstance_1);
fl_MyInstance_1.x=300
fl_MyInstance_1.y=300
}
button2.addEventListener(MouseEvent.CLICK, fl_MouseClickHandler_2);function fl_MouseClickHandler_2(event:MouseEvent):void
{
if(this.contains(fl_MyInstance_1),(fl_MyInstance_3))
removeChild(fl_MyInstance_1),(fl_MyInstance_3);
addChild(fl_MyInstance_2);
fl_MyInstance_2.x=300
}button3.addEventListener(MouseEvent.CLICK, fl_MouseClickHandler_3);
function fl_MouseClickHandler_3(event:MouseEvent):void
{
if(this.contains(fl_MyInstance_1),(fl_MyInstance_2))
removeChild(fl_MyInstance_1),(fl_MyInstance_2);
addChild(fl_MyInstance_3);
fl_MyInstance_3.x=300
}
-
Cosa vuoi ottenere? carichi un movieclip e scarichi quello presente?
Non puoi dire a flash di rimuovere l'istanza se non è stata prima caricata, ti crei una funzione deputata a rimuovere le istanze "function rimuovi_istanze()" poi ti avvali della condizione if e del metodo contains. cioè se lo stage contiene questa istanza rimuovila, infine richiami la funzione da ogni pulsante.var fl_MyInstance_1:quadro = new quadro(); var fl_MyInstance_2:cerchio = new cerchio(); var fl_MyInstance_3:triangolo = new triangolo(); button1.addEventListener(MouseEvent.CLICK, fl_MouseClickHandler_1); function fl_MouseClickHandler_1(event:MouseEvent):void { if (this.contains(fl_MyInstance_2),(fl_MyInstance_3 )) { rimuovi_istanza(); } addChild(fl_MyInstance_1); fl_MyInstance_1.x = 300; fl_MyInstance_1.y = 300; } button2.addEventListener(MouseEvent.CLICK, fl_MouseClickHandler_2); function fl_MouseClickHandler_2(event:MouseEvent):void { if (this.contains(fl_MyInstance_1),(fl_MyInstance_3 )) { rimuovi_istanza(); } addChild(fl_MyInstance_2); fl_MyInstance_2.x = 300; } button3.addEventListener(MouseEvent.CLICK, fl_MouseClickHandler_3); function fl_MouseClickHandler_3(event:MouseEvent):void { if (this.contains(fl_MyInstance_1),(fl_MyInstance_2 )) { rimuovi_istanza(); } addChild(fl_MyInstance_3); fl_MyInstance_3.x = 300; } function rimuovi_istanza() { if (this.contains(fl_MyInstance_1)) { removeChild(fl_MyInstance_1); } else if (this.contains(fl_MyInstance_2)) { removeChild(fl_MyInstance_2); } else if (this.contains(fl_MyInstance_3)) { removeChild(fl_MyInstance_3); } }
-
Grazie Nathan e scusa per il disturbo , senti l' ultima cosa poi ti lascio in pace , se io volessi caricare un testo di imput
al tocco del pulsante in una posizione x , e finito di inserire il testo spostarlo in una posizione x1 , diciamo , secondo
te e' fattibile ????
-
Nessun disturbo, se non volessi non sarei quà, non ho capito bene la domanda, il testo di input lo si scrive con la tastiera, forse intendi un testo dinamico?
PS, quando cambi argomento apri una nuova discussione con un titolo appropriato per favore, serve anche per gli altri utenti che dovesero fare una ricerca con un motore.
-
esattamente , il testo lo devo scrivere con la tastiera al tocco di un pulsante e lo voglio posizionare in alto........quanto ho finito
di scrivere , tutto il testo che ho scritto deve automaticamente scorrere in basso....
-
per intenderci simile al layaout di facebook , quando esce la tastiera , il testo devo scorrere in alto , e poi dopo
finito di inserire il testo , deve tornare in basso
-
Ancora non ci sono, se tu scrivi in un campo di testo input quando arrivi sul fondo man mano che continui a scrivere il testo scorre automaticamente in alto.
-
@Nhatan said:
Ancora non ci sono, se tu scrivi in un campo di testo input quando arrivi sul fondo man mano che continui a scrivere il testo scorre automaticamente in alto.
scusa ma non mi spigo bene.....se io esporto la mia app. su android , ed ho un campo di testo in fondo alla pagina , quando tocco e si apre la tastiera , mi coprira' il mio testo di imput , e dovrei inserire le parole alla cieca...
-
Ah ecco non devi spostare il testo ma proprio il campo, gli dai un nome istanza e imposti le coordinate che vuoi, solo che non ho idea come potresti fare a spostare il campo alla fine della digitazione, cioè hai bisogno di qualcosa che scateni l'evento, un pulsante o anche click su un determinato tasto, tieni presente che non so come reagisce actionscript alla tastiera android.