Bom dia, estou com um problema e não estou achando a solução. É o seguinte... tenho este KeyListener:
combo.addKeyListener(new java.awt.event.KeyListener() {
char digitado;
public void keyPressed(KeyEvent e) {
digitado = e.getKeyChar();// recebe a letra digitada no teclado
juntaChar = juntaChar+digitado; // pego as letras em char e junto como uma STRING
}
public void keyReleased(KeyEvent e){
//nada
}
public void keyTyped(KeyEvent e) {
//nada
}
});
A ideia seria o seguinte: a cada letra que eu digito no meu JComboBox eu formo uma String e execute o meu SQL(que vai retornar os nomes dos clientes para um AUTOCOMPLETE). Quando eu digito a primeira letra Por exemplo L o SQL executa certo sem problemas retornando todos os nomes que começam com L por exemplo "LUCAS". Porém depois da segunda letra o meu SQL não executa mais. Se alguém souber o que estou fazendo de errado me avise!
Pergunta
lucascarollo
Bom dia, estou com um problema e não estou achando a solução. É o seguinte... tenho este KeyListener:
combo.addKeyListener(new java.awt.event.KeyListener() {
char digitado;
public void keyPressed(KeyEvent e) {
digitado = e.getKeyChar();// recebe a letra digitada no teclado
juntaChar = juntaChar+digitado; // pego as letras em char e junto como uma STRING
// meu autocomplete
juntaChar = juntaChar.toUpperCase();
String sql= "SELECT nome_pdpess FROM pdv_pessoas WHERE nome_pdpess LIKE '%"+juntaChar+"%'"; //
EventList glazedlistFcfo = new BasicEventList();
try {
stm = con.createStatement();
} catch (SQLException ex) {
Logger.getLogger(SinGUI.class.getName()).log(Level.SEVERE, null, ex);
}
try {
rs = stm.executeQuery(sql);
} catch (SQLException ex) {
Logger.getLogger(SinGUI.class.getName()).log(Level.SEVERE, null, ex);
}
try {
while(rs.next()){
System.out.println("pessoas no list");
glazedlistFcfo.add(rs.getString("nome_pdpess"));
}
} catch (SQLException ex) {
Logger.getLogger(SinGUI.class.getName()).log(Level.SEVERE, null, ex);
}
SwingUtilities.invokeLater(new Runnable() {public void run() {
AutoCompleteSupport autoComplete = AutoCompleteSupport.install(combo, glazedlistFcfo);
}
});
}
public void keyReleased(KeyEvent e){
//nada
}
public void keyTyped(KeyEvent e) {
//nada
}
});
A ideia seria o seguinte: a cada letra que eu digito no meu JComboBox eu formo uma String e execute o meu SQL(que vai retornar os nomes dos clientes para um AUTOCOMPLETE). Quando eu digito a primeira letra Por exemplo L o SQL executa certo sem problemas retornando todos os nomes que começam com L por exemplo "LUCAS". Porém depois da segunda letra o meu SQL não executa mais. Se alguém souber o que estou fazendo de errado me avise!
Agradeço!
Link para o comentário
Compartilhar em outros sites
0 respostass a esta questão
Posts Recomendados
Participe da discussão
Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.