Salve galera…
Seguinte, to tentando sem sucesso fazer um JComboBox para pesquisa de uma tabela no banco de dados. Nesse JComboBox o usuario vai digitando as informações que precisa e é retornado um List de um DAO para o mesmo JComboBox que abre o popUp mostrando o que encontrou na tabela…por exemplo. Se a pessoa digitar a letra F o List terá todas as informacoes q encontrou na tabela do banco por exemplo: Fernando, Fabricio, Francisco, etc…
Ja pesquisei muito sobre isso, e não estou conseguindo implementar…Agora, encontrei essa biblioteca GlazedList que se propõe a fazer isso, mas tbm ainda não consegui fazer.
aqui vai como estou tentando.
// Bean
public class Usuario {
private Long id;
private String usuario;
//get e set
}
// aqui meu DAO
public List<Usuario> retornaListaUsuario(String u){
List<Usuario> lista = new ArrayList<Usuario>();
try{
PreparedStatement stm = this.con.prepareStatement("SELECT * FROM usuarios WHERE usuario LIKE ?");
stm.setString(1, "%" + u + "%");
ResultSet rs = stm.executeQuery();
while(rs.next()){
Usuario t = new Usuario();
t.setUsuario(rs.getString("usuario"));
lista.add(t);
}
rs.close();
stm.close();
}catch(SQLException e){
System.out.println(e.getMessage());
}
return lista;
}
//aqui como estou tentando usando NetBeans7
// combo = ao JComboBox q tenho no meu JFrame
public void meuCombo(){
final JTextField tf = (JTextField)combo.getEditor().getEditorComponent();
tf.addKeyListener(new KeyAdapter() {
public void keyReleased(KeyEvent e){
List<Usuario> lista = new UsuarioDAO().retornaListaUsuario(tf.getText());
AutoCompleteSupport support = AutoCompleteSupport.install(
combo, GlazedLists.eventListOf(lista));
}
});
}
Não estou conseguindo fazer isso funcionar galera…Como fazer isso ???
obrigado.