Oi pessoas…tava conversando com um amigo meu aqui e ele me pergunto se tem como fazer um JTextField ficar estilo o do google, que a cada letra que a pessoa digita no mesmo vão aparecendo as opções de pesquisa onde aquela letra/palavra vai se encaixando.
Se tiver como…isso cria um deficit de agilidade? Já que os dados vão vir de um banco de dados(no nosso caso)…
Pesquise por AutoComplete em JTextField,
eu achei um codigo talvez seja o que vc precisa: http://www.java2s.com/Code/Java/Swing-JFC/AutocompleteTextField.htm
Nunca tentei, mas o que vc quer é um autoComplete…
ou talvez algo no onkeyup ou onkeydown do JTextField vc consiga fazer a consulta e trazer os dados
“Tem como fazer?” - Claro que tem! Sempre tem, se você tiver tempo e dinheiro!
O Eclipse tem isso, o Netbeans também, então, dá para fazer.
Se vai ter problema de performance, vai depender da estrutura do seu banco e de como os dados estão lá.
Afinal, o Google deve ter o maior banco de dados do mundo e eles fazem autocomplete com uma velocidade (muito) satisfatória.
Como a andii disse, você pode colocar algo no onkeypress e pegar o texto do JTextField pegar os dados, montar um JList com os resultados e colocar em algo flutuante (JDialog ou algo do tipo) na posição correta (embaixo do JTextField), para dar impressão que é um único componente. Quando o usuário pressionar para baixo (seta para baixo), você coloca o foco na JList e deixa ele selecionar o valor. Quando selecionar (enter ou click), você coloca o valor no JTextField e esconde o JPanel.
Desculpa, mas não vou ter tempo de trabalhar num exemplo agora (é bastante código).
Dá uma pesquisada e se tiver alguma dúvida de como fazer alguma dessas partes, estamos aqui! Só chamar!
Não sou especialista em componentes Swing… .mas talvez vc consiga fazer algo com JComboBox, não?
Alguém que entende mais que eu de componentes do Swing poderia dizer se dá certo com JComboBox ou não
Infelizmente, o JComboBox não dá suporte para edição, como um campo de texto.
Lembrei de uma extensão que existe para o Swing chamada Swing X. Não sei como é, nunca usei, mas tem uns exemplos e eles têm um componente que faz exatamente o que você quer. Segue o link: https://swingx.dev.java.net/
Então…era só uma curiosidade mesmo obrigado pelas idéias…e consegui fazer com o esquema do JList posicionado embaixo do TextField,ai eu testei uma vez e ele deu certo na primeira letra e depois não atualizava mais.
Como era só uma curiosidade não tive o empenho de ver o que tava errado
aaa cara entao esta terminado, e eu quero APROVEITAR a oportunidade para dizer que foi bom trabalhar com voces… agente em equipe sempre vamos resolver os problemas que vieram e que estao por vi…
quero dizer tambem que [color=red]AMO[/color] todos voces, por todas as ajudaS, e eu nao sou gay ta!, so estou expressando os meus sentimento…
mas vlw, se precisarem de mais alguma coisa estou ai com toda minha experiencia de anos no ramo e tal ne…