Comunidad de diseño web y desarrollo en internet online

Como detectar que el cursor esta fuera de un mc cuando esta onPress

Citar            
MensajeEscrito el 11 Abr 2011 04:47 pm
Hola, a ver si me podeis ayudar.

Tengo un mc1, y cuando el cursor del ratón está encima de él haciendo onPress, envio a mc2 a un determinado fotograma y cuando no lo está el _alpha de mc2 se pone a 0. El problema que tengo es que cuando se sigue con el onPress (presionando el botón izquierdo del ratón)después de que el cursor salga fuera de ese mc1, el mc2 no se vuelve invisible y lo que necesito es algo que haga que aunque el usuario no suelte el botón del ratón, cuando el cursor salga encima de mc1, el mc2 se vuelva invisible.

¿Cómo lo podría hacerlo?

Gracias.

Por plug

78 de clabLevel



Genero:Masculino  

firefox
Citar            
MensajeEscrito el 11 Abr 2011 05:06 pm
Usa los eventos RollOver y RollOut

Jorge

Por solisarg

BOFH

13669 de clabLevel

4 tutoriales
5 articulos

Genero:Masculino   Bastard Operators From Hell Premio_Secretos

Argentina

firefox
Citar            
MensajeEscrito el 12 Abr 2011 08:12 am
Pero si está presionado el botón del ratón cuando el cursor sale fuera no funcionan esos eventos. Lo que necesito es que cuando el cursor salga de mc1 y se tenga pulsado el botón del ratón, detecte ese onRollOut...

Por plug

78 de clabLevel



Genero:Masculino  

firefox
Citar            
MensajeEscrito el 12 Abr 2011 11:56 am
Al final lo he conseguido a medias. Lo que se me ha ocurrido ha sido crear otro mc con alpha 0 que sigue al cursor del ratón y con el método hitTest calcular si está encima o no del mc1. Como digo, en pricipio funciona, pero cuando el ratón se mueve muy rápido no funciona bien.

El código que he utilizado es este:

Código ActionScript :

mc1.onRollOver = function() {
   mc2.onMouseMove = function() {
      this._x = _root._xmouse;
      this._y = _root._ymouse;
                mc2._visible = true;
   }
       Mouse.hide();
}


Y dentro de mc2 tengo otro mc al que he llamado control_mc con este código dentro de él:

Código ActionScript :

onClipEvent (enterFrame) {
   if (control_mc, hitTest(_root.mc1)) {
                this._parent.gotoAndStop(1);
   } else {
                this._parent.gotoAndStop(2);
                doRotar();
   }
}

lo que pasa es que la funcion doRotar no se ejecuta inmediatamente si no que tarda algun tiempo y necesito que se ejecute tan pronto como el mc control deja de estar encima del mc1.
¿alguna idea de como hacerlo? ¿o quizá me esté equivocando y este no es el camino correcto?
:?

Por plug

78 de clabLevel



Genero:Masculino  

firefox
Citar            
MensajeEscrito el 12 Abr 2011 01:43 pm
No hace falta tanto lio, si relees la ayuda verás que hay un evento onDragOut

Jorge

Por solisarg

BOFH

13669 de clabLevel

4 tutoriales
5 articulos

Genero:Masculino   Bastard Operators From Hell Premio_Secretos

Argentina

firefox
Citar            
MensajeEscrito el 12 Abr 2011 03:25 pm
Muchas garcias Jorge!!

Mejor así. :oops:

Por plug

78 de clabLevel



Genero:Masculino  

firefox

 

Cristalab BabyBlue v4 + V4 © 2011 Cristalab
Powered by ClabEngines v4, HTML5, love and ponies.