Foros del Web » Programación para mayores de 30 ;) » Java »

JComboBox + KeyListener

Estas en el tema de JComboBox + KeyListener en el foro de Java en Foros del Web. Hola a todos... espero me puedan colaborar Como hacer que funcione el siguiente codigo.... nesecito que imprima HOLA cada ves que el usuario escriba algo ...
  #1 (permalink)  
Antiguo 28/09/2005, 14:38
 
Fecha de Ingreso: junio-2005
Ubicación: Cucuta
Mensajes: 62
Antigüedad: 18 años, 10 meses
Puntos: 2
JComboBox + KeyListener

Hola a todos... espero me puedan colaborar

Como hacer que funcione el siguiente codigo.... nesecito que imprima HOLA cada ves que el usuario escriba algo en el combo, la verdad es que no esta entrando en el keyReleased y no me explico por que ;

//Esta parte de codigo va junto al resto de coponentes

javax.swing.JComboBox combo = new javax.swing.JComboBox combo(vector);
ConsutaEditable cons = new ConsultaEditable();
combo.setEditable(true);
combo.addKeyListener(cons)

// ESTA PARTE DE CODIGO ES EL EVENTO DEL COMBO

class ConsultaEditable extends java.awt.event.KeyAdapter {
public ConsultaEditable() { }

public void keyReleased(java.awt.event.KeyEvent ev) {
System.out.println("HOLA");
}
}

Atte,
Antony Hernan Delgado Solano
  #2 (permalink)  
Antiguo 28/09/2005, 14:53
Avatar de goncafa  
Fecha de Ingreso: julio-2002
Ubicación: Santiago
Mensajes: 1.211
Antigüedad: 21 años, 10 meses
Puntos: 10
Estas usando el escuchador incorrecto, en un combobox no puedes escribir, por ende no se lanzara jamas la accion de tipear alguna letra o algo.

El escuchador que debes usar para este componente es addItemListener(ItemListener aListener)

Saludos
__________________
se despide hasta la proxima
Gonzalo Castillo
  #3 (permalink)  
Antiguo 28/09/2005, 20:04
 
Fecha de Ingreso: junio-2005
Ubicación: Cucuta
Mensajes: 62
Antigüedad: 18 años, 10 meses
Puntos: 2
Creo que no me hize entender

Creo que no me hize entender pero lo importante es que ya encontre la solucion, muchas gracias por contestar


import java.awt.Container;
import java.awt.Dimension;
import java.awt.FlowLayout;
import java.awt.HeadlessException;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.awt.event.KeyEvent;
import java.awt.event.KeyListener;

import javax.swing.JComboBox;
import javax.swing.JFrame;
import javax.swing.JPanel;
import javax.swing.text.JTextComponent;

public class Frame2 extends JFrame implements ActionListener, KeyListener
{

protected JComboBox jComboBox = new JComboBox(new String[]{"Bruno", "GUJ", "OS"});
protected JPanel jPanel = new JPanel();

public Frame2() throws HeadlessException
{
super ( );
this.setDefaultCloseOperation(3);
this.setPreferredSize(new Dimension(640,480));
jPanel.setLayout(new FlowLayout(FlowLayout.CENTER));
jComboBox.setEditable(true);
JTextComponent editor = (JTextComponent)jComboBox.getEditor().getEditorCom ponent();
editor.addKeyListener(this);
/* jComboBox.addActionListener(this);*/
/* jComboBox.addKeyListener(this);*/
jPanel.add(jComboBox);
Container container = this.getContentPane();
container.add(jPanel);
}

public static void main(String[] args)
{
Frame2 fs = new Frame2();
fs.pack();
fs.setVisible(true);

}

public void actionPerformed(ActionEvent e)
{
/* System.out.println ( jComboBox.getSelectedItem().toString()); */
}

public void keyPressed(KeyEvent e)
{
}

public void keyReleased(KeyEvent e)
{
System.out.println ("HOLA");
}
}

public void keyTyped(KeyEvent e)
{
/*System.out.println ( jComboBox.getSelectedItem().toString());*/
}

}
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 22:52.