Ver Mensaje Individual
  #3 (permalink)  
Antiguo 28/07/2011, 16:33
Sanyi17
 
Fecha de Ingreso: marzo-2010
Mensajes: 11
Antigüedad: 14 años, 1 mes
Puntos: 0
Respuesta: Buscador tipo Facebook

Que tal amigo, supongo que para estas fechas ya debes haber implementado una solución o el proyecto ya no lo necesitas si era para la escuela. Pero aquí te dejo una solución que acabo de implementar ya que estoy desarrollando un sistema con ese tipo de buscador.

Lo que hice fué agregar al JTextField un CaretLister y un KeyListener. El primero para que conforme un caracter se fuera insertando el sistema realizara una consulta y el segundo para que escuchara solamente a dos teclas; la tecla Enter y la tecla VK_DOWN (flecha hacia abajo).

Implementé un método dentro de mi clase que creara el JPopupMenu. Este método es invocado cada vez que el método caretUpdate(CaretEvent e) (método abstracto de la interfaz CaretLister ) recibe un evento. Dentro de mi método crearPopup() defino la caracteristica .setFocusable(false) para el JPopupMenu de esta manera mientras se teclea dentro del JTextField éste no pierde el foco.

Cuando sobre el JTextField se teclea Enter el evento lo recibo con el método abstracto keyReleased(KeyEvent e) (de la interfaz KeyListener) y realizo esto: myFirstItem.doClick() lo cual es como si el usuario hubiera hecho click en el primer item de mi pop-up.

Saludos, seguro a más de uno le servirá esta información :D