Flash CS3 - Flash CS4

Free tutorials and scripts for all.
Actionscript 3.0

mouseEnabled di Flash CS3 - trucco del giorno

This is a discussion on mouseEnabled di Flash CS3 - trucco del giorno within the Articoli e tutorials forums, part of the Flash CS3 e Actionscript 3.0 category; Ciao ! Vi è capitato di assegnare un evento del mouse ad una MovieClip ( tipo MouseEvent.MOUSE_DOWN ) e lei si comporta come ...


Go Back   Forum Flash CS3 Flash CS4 > Flash CS3 e Actionscript 3.0 > Articoli e tutorials

Register FAQ Members List Calendar Search Today's Posts Mark Forums Read
  1 links from elsewhere to this Post. Click to view. #1 (permalink)  
Old 29-11-07, 06:33
Administrator
 
Join Date: Jul 2007
Location: Cesena
Posts: 4,486
Rep Power: 6
Flep is on a distinguished road
mouseEnabled di Flash CS3 - trucco del giorno

Ciao !

Vi è capitato di assegnare un evento del mouse ad una MovieClip ( tipo MouseEvent.MOUSE_DOWN ) e lei si comporta come niente fosse ?
Si comporta come se quell' evento non lo avesse mai associato...
Di sicuro avete un' altra MovieClip sopra di essa che blocca gli eventi del mouse.

Se vi è capitato e non avete ancora trovato una soluzione, questo tutorial è la soluzione.
Il ' trucco ' è tutto nella proprietà mouseEnbled della classe InteractiveObject ( utilizzabile anche dalla MovieClip in quanto subclass di InteractiveObject ).


Mettiamo caso che ho una MovieClip che chiamo clip_mc e in un livello superiore ho un' altra MovieClip con alpha 50 che copre clip_mc.
In questo caso tutti gli eventi del mouse associati a clip_mc vengono annullati dalla posizione della MovieClip superiore.
Per risolvere basta dire alla MovieClip superiore .mouseEnabled=false;

Vediamo un esempio concreto...

Creo una MovieClip, gli assegno nome istanza clip_mc e gli assegno un evento MOUSE_DOWN in modo che ogni volta che viene cliccata un campo di testo mi scrive 'ok ':
Code:
clip_mc.mouseChildren=false;
clip_mc.buttonMode=true;
clip_mc.addEventListener(MouseEvent.MOUSE_DOWN,go);

function go(evt:MouseEvent):void
{
	debug_txt.appendText('ok'+'\n');
}





Fin quì nulla di strano, tutto funziona correttamente, infatti se clicco il campo di testo fa il suo dovere in quanto l' evento è stato intercettato.


Adesso inserisco un' altra MovieClip con nome istanza over_mc in un livello superiore a clip_mc mantenendo lo stesso evento su clip_mc, quindi lo stesso codice






Ecco che clip_mc non intercetta più l' evento MOUSE_DOWN, infatti se provo a cliccare non succede nulla...anzi... addirittura non si vede neanche più la manina del mouse quando passo sopra a clip_mc.
Qeusto è causato dal fatto che over_mc ha una proprietà che si chiama mouseEnabled che in questo momento ha valore true e quindi copre gli eventi del mouse su clip_mc.
Per risolvere questo problema quindi basta impostare mouseEnabled false di over_mc, in questo modo:
Code:
over_mc.mouseEnabled=false;
clip_mc.mouseChildren=false;
clip_mc.buttonMode=true;
clip_mc.addEventListener(MouseEvent.MOUSE_DOWN,go);

function go(evt:MouseEvent):void
{
	debug_txt.appendText('ok'+'\n');
}





Infatti se ora clicco su clip_mc tuto è tornato a funzionare correttamente.

Alla prossima & stay tuned !
Digg this Post!Add Post to del.icio.usBookmark Post in TechnoratiFurl this Post!
Reply With Quote

  #2 (permalink)  
Old 15-01-08, 22:03
Junior Member
 
Join Date: Jan 2008
Posts: 5
Rep Power: 0
Patrizio is on a distinguished road
Re: mouseEnabled di Flash CS3 - trucco del giorno

mi da questo errore do ve inserisco il codice perchè?
debug_txt.appendText('ok'+'\n');
cosa manca? scusatemi ma sto veramente a pezzi mi affaccio ora a flash ,ho cercato anche nei tutorials ma non ho trovato niente
Digg this Post!Add Post to del.icio.usBookmark Post in TechnoratiFurl this Post!
Reply With Quote

  #3 (permalink)  
Old 16-01-08, 07:30
Administrator
 
Join Date: Jul 2007
Location: Cesena
Posts: 4,486
Rep Power: 6
Flep is on a distinguished road
Re: mouseEnabled di Flash CS3 - trucco del giorno

Quote:
Originally Posted by Patrizio View Post
mi da questo errore do ve inserisco il codice perchè?
debug_txt.appendText('ok'+'\n');
cosa manca? scusatemi ma sto veramente a pezzi mi affaccio ora a flash ,ho cercato anche nei tutorials ma non ho trovato niente
Quale errore ?
__________________

 


I recommend: Essential Actionscript 3.0

- Non rispondo ai messaggi privati con domande tecniche. Apri una discussione sul forum !
- I do not reply technicians pvt messages. Open a thread !
Digg this Post!Add Post to del.icio.usBookmark Post in TechnoratiFurl this Post!
Reply With Quote

Reply

Bookmarks

Thread Tools
Display Modes

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is On
Trackbacks are On
Pingbacks are On
Refbacks are On
Forum Jump

Similar Threads

Thread Thread Starter Forum Replies Last Post
this.root - trucco del giorno Flep Articoli e tutorials 8 10-10-08 16:43
Trucco del giorno - MovieClip.dropTarget Flep Articoli e tutorials 3 04-09-08 10:37
Trucco del giorno - Loader.content Flep Articoli e tutorials 7 29-06-08 16:24
Trucco del giorno - MovieClip.mouseChildren Flep Articoli e tutorials 0 21-09-07 10:46
Trucco del giorno - istanza fantasma Flep Articoli e tutorials 0 20-09-07 15:24


All times are GMT. The time now is 13:02.


Powered by vBulletin versione 3.7.4
Copyright ©2000 - 2008, Jelsoft Enterprises Ltd.
Search Engine Optimization by vBSEO 3.2.0 RC4
Forum SiteMap


FlepStudio
by Filippo Lughi
P.IVA 03605860406