FTP | CCD | Buscar | Trucos | Trabajo | Foros |
|
Registrarse | FAQ | Miembros | Calendario | Guía de estilo | Temas de Hoy |
|
Herramientas | Buscar en Tema | Desplegado |
|
#1
|
|||
|
|||
Evento OnMouseLeave
Hola amigos,
Tengo el siguiente problema: Tengo en un form principal un componente GroupBox con diversos componentes (etiquetas, RadioButtons, ComboBox...). Necesito que cuando el cursor deje el espacio ocupado por este componente se active un evento para realizar unas acciones. Para ello uso el evento OnMouseLeave. El problema lo tengo cuando paso el cursor por encima de los componentes contenidos en el GroupBox también me activan este evento y esto no es lo que quiero. Alguna idea de como podría solucionar esto??? Muchas gracias. |
#2
|
||||
|
||||
Hola,
Tal vez tendrías que plantearte usar otro evento, o bien montar de otro modo el asunto. No es que se ejecute el evento "OnMouseLeave" en los componentes dentro del "GroupBox", sino que, cuando se sitúa el cursor encima de uno de ellos, se ha "salido" del "GroupBox", y por eso se dispara el evento de marras... vamos que en realidad es lo que se espera. Igual podría solucionarse averiguando qué componente está sobre qué control, comprobando que el "padre" de este no sea el propio "GroupBox", en fin... pero igual encuentras otra forma menos complicada y acaso problemática. |
#3
|
|||
|
|||
Hola dec,
Lo primero es darte gracias por tu respuesta. Lo segundo comentarte que soy el del panel con chinchetas del otro día jeje (no sé si lo recordarás que preguntaba por un panel que se pudiese ocultar o dejar fijo). Pues bien estoy usando el componente Jedi JvRollOut y lo que estoy intentando es darle funcionalidad al rollo ese (y nunca mejor dicho). Sobre este componente tengo mi GroupBox con sus componentes y estoy intentando expandir y comprimir el JvRollOut a mi antojo. Bueno pues sigo haber que intento ahora... Gracias... |
#4
|
||||
|
||||
Hola,
Pues es que ahora mismo no tengo instalada la Jedi VCL y no te puedo decir... se me ocurre que tal vez podrías usar el propio componente "JvRollOut" para albergar los componentes que ahora tienes en el "GroupBox", y lo mismo así puedes conseguir algo parecido a lo que quieres, puesto que vemos que con el "GroupBox" mismo no es posible. Yo he estado intentando algo intentando averiguar el padre del control "debajo del cursor", pero, chico, no he conseguido nada... no sé. A lo mejor otro compañero sabría decir algo más... |
#5
|
|||
|
|||
Primero lo intenté con los eventos del propio componente JvRollOut, pero este tiene muy pocos eventos para usar. Sólo tiene los eventos: OnExpand, OnCollapse, OnEnter y OnExit. Estos dos últimos eventos por más que miro la ayuda no logro entender cuando se activan, pero creo que tampoco es lo que necesito.
Bye... |
#6
|
||||
|
||||
Pues como todas las cosas de la JVCL, tiene sus detalles.
- Pones el componente en tu forma (para que tenga los "valores de serie" en sus propiedades) - pones TabStop a True - Ejecutas Si usas la tecla tabulador, verás que efectivamente el evento OnEnter y OnExit funcionan cuando se espera. Cambias TabStop a False y ejecutas: - Cambias la propiedad RolloverAnyWhere a false (por comodidad, no es que sea necesario). - Tienes que dar un clic con el ratón, dentro el jvRollOut para que se produzca el OnEnter. - Tienes que hacer clic con el ratón en el form o en otro control de la ventana para que se produzca el evento OnExit. Bueno, así es como funciona el "rollo" este . No habré entendido algo porque para esto: Cita:
Saludos
__________________
Si usted entendió mi comentario, contácteme y gustosamente, se lo volveré a explicar hasta que no lo entienda, Gracias. |
|
|
Temas Similares | ||||
Tema | Autor | Foro | Respuestas | Último mensaje |
Llamar evento desde otro evento | nachito_tuc | OOP | 1 | 23-08-2006 21:37:43 |
Evento OnKeyPress | papulo | Varios | 3 | 30-08-2005 13:37:04 |
OnMouseEnter/OnMouseLeave para una celda determinada de un DbGrid | S.M.S. | OOP | 4 | 06-08-2005 00:13:48 |
¿Se puede añadir a un TPanel OnMouseLeave? | Tonio | OOP | 4 | 20-06-2005 23:14:37 |
parar un evento | empty | Varios | 7 | 29-04-2004 13:08:17 |
|