Java - Provocar un KeyEvent desde otro componente

   
Vista:

Provocar un KeyEvent desde otro componente

Publicado por Mario (199 intervenciones) el 30/07/2008 16:20:12
Mi duda es sencilla, quiero hacer que un componente capture un KeyEvent provocado en otro componente, por ejemplo, que un JTextField capture un KeyEvent lanzado por un JList de forma que parezca que lo ha generado el propio JTextField.
A ver si podeis ayudarme. Gracias
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

RE:Provocar un KeyEvent desde otro componente

Publicado por ideasjava (83 intervenciones) el 30/07/2008 16:45:52
Hola. La idea es que cada componente capture eventos de si mismo. Si quieres q al producirse un evento en un componente X, el otro componente Y haga algo podrias definir esta accion dentro del evento del componente X. Con eso seria suficiente.

Quizas no entendí bien el problema. Cualquier cosa pregunta
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Provocar un KeyEvent desde otro componente

Publicado por Mario (199 intervenciones) el 30/07/2008 17:05:25
Te explico más concretamente. Estoy creando un componente que está compuesto por un JScrollPane y un JList contenido en el JScrollPane.
Cuando en un JFrame añades esos dos componentes juntos, si exploras la lista por ejemplo con las flechas de dirección del teclado, la barra de scroll sube o baja según la necesidad para ir mostrando el elemento seleccionado en cada momento.
Pues bien... en este componente que estoy creando, no sucede eso, así que supongo que tendré que implementar yo mismo ese movimiento del scroll. Viendo el funcionamiento normal, supuse que el Scroll pilla el KeyEvent de la lista y automaticamente mueve la barra, así que quería intentar pasarle yo mismo el evento, a ver si así se mueve la barra...
A veces soy muy torpe para explicar las cosas, si necesitas que te especifique algo más me lo dices ;·).
Gracias por la respuesta.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

SOLUCIONADO

Publicado por Mario (199 intervenciones) el 30/07/2008 18:39:44
He solucionado lo que pretendía sin tener que usar eventos, sino usando el método ensureIndexIsVisible. Gracias.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar