Pesquisa igual a do google no java jTextField + jList

  Рет қаралды 20,120

Java - Desktop

Java - Desktop

Күн бұрын

Пікірлер: 65
@java-desktop4898
@java-desktop4898 6 жыл бұрын
Pessoal... Recomendo que veja um outro vídeo onde tem uma pequena atualização desse código: kzbin.info/www/bejne/kJXXc5yidrmfaZY
@pamelacarneiro145
@pamelacarneiro145 6 жыл бұрын
Java - Desktop eii eu tou tentando fazer esse código, mas tá dando erro, acho q na hora de exibir os dados nos campos... :/
@java-desktop4898
@java-desktop4898 6 жыл бұрын
@@pamelacarneiro145 Poste seu código aqui pra analisarmos ou envie no meu e-mail: ga.sistema@yahoo.com Se você tiver programando no estilo MVC, pode ser que precise fazer alguns ajustes, mas a lógica é praticamente a mesma.
@MaxGyn2023
@MaxGyn2023 5 жыл бұрын
Faz tempo que procuro isso vou testar obrigado, dei like
@julianoboaro8777
@julianoboaro8777 6 жыл бұрын
Excelente vídeo. Funcionou certinho, só tive q adaptar ele a orientação objeto, ao invés de estruturado. Ficou perfeito. Muito obrigado Abraço
@isabelpereira3497
@isabelpereira3497 6 жыл бұрын
Bom dia, eu sou totalmente novo em java e gostaria de saber se vc fez algum video explicadão a criação do codigo ou se vc poderia compartinhar esse codigo, pois não consegui fazer ele apenas olhando o seu video, pois não entendi como faço para pegar do banco e jogar no jtexfild .
@leandrocruz6621
@leandrocruz6621 3 жыл бұрын
Faz um vídeo sobre esta área de programação falando da suas experiências seria legal
@leandrocruz6621
@leandrocruz6621 5 жыл бұрын
O meu não fica invisível a jlist quando apago o campo jtext e fica dados da na lista
@leandrocruz6621
@leandrocruz6621 5 жыл бұрын
Resolvido
@java-desktop4898
@java-desktop4898 5 жыл бұрын
Então... Pode ter alguns detalhes que devem ter escapado. Isso é super normal pra nós simples mortais. Não me recordo se apliquei essa lógica no exemplo passado, mas pensamos da seguinte forma: Se eu quero que fique invisível a lista, então eu devo ir contanto quantos caracteres tem digitado no jtexfild, se a contagem for igual a zero, então eu seto a lista pra lista.setvisible(false) e aproveito para limpar a lista. Num futuro breve vou desenvolver uma biblioteca específica para isso com recursos do mouse e teclado. Vocês só terão o trabalho de importar a biblioteca e chamar a função.
@leandrocruz6621
@leandrocruz6621 5 жыл бұрын
@@java-desktop4898 criei um método e dentro do método jtext.setVisible(false) Mais mesmo assim obrigado através de suas aulas implantei no meu projeto vários recursos
@evertonsantos7516
@evertonsantos7516 6 жыл бұрын
o problema, pelo menos no meu caso, é que se vc tem dois clientes com o mesmo nome ex: linha 1 Everton Santos, carro gol.; linha 2 Everton Santos, carro celta... O sistema esta trazendo a linha seguinte da que eu dei o clique. Eu clico na linha 1, ele me retorna o resultado da linha 2, clico na 2 e como não tem a linha 3 ele retorna a linha 1. Como resolvo?
@java-desktop4898
@java-desktop4898 6 жыл бұрын
Tem um outro vídeo no canal de continuação do vídeo acima. Nesse segundo vídeo o seu problema será resolvido. A solução do segundo vídeo é bem simples, pois lá é buscado os dados com base no ID ou CÓDIGO. Ao clicar numa determinada linha o sistema pegará um ID referente ao ÍNDICE da linha selecionada. Dessa forma a pesquisa tem 100% de acerto, pois mesmo que haja 1000 nomes iguais, o ID é único. Dê uma olhada no vídeo: kzbin.info/www/bejne/kJXXc5yidrmfaZY
@diegowesley5308
@diegowesley5308 5 жыл бұрын
Amigo por que so no meu o next e getString nao é reconhecido! public void ListadePesquisa(){ try { CONEXAO.executaSQL("SELECT * FROM Pizza where nome like" + pesquisapizza.getText()+ "&' ORDER BY Produto"); MODELO.removeAllElements(); int v = 0; //esse next nao reconhece fica com erro juntamente com getString while (CONEXAO.resultset.next() & v = 1){ lista.setVisible(true); }else{ lista.setVisible(false); } } catch { poderia me ajudar
@java-desktop4898
@java-desktop4898 5 жыл бұрын
Pode ser alguma importação errada. Envia seu codigo fonte pra mim dar uma verificada: ga.sistema@yahoo.com
@isabelpereira3497
@isabelpereira3497 6 жыл бұрын
gostaria de saber de vc fez algum video mostrando a criação dos metodos ? estou perdido. obrigado
@java-desktop4898
@java-desktop4898 6 жыл бұрын
Oi. Tudo Bem Isabel? Então... Não sei se poderei te ajudar de uma forma rica em detalhes. O java oferece várias formas de chegar ao mesmo resultado. Hoje eu trabalho de uma forma totalmente diferente do apresentado neste vídeo. Mas a lógica de pesquisa é a mesma. Ja faz um tempo que adotei um Padrão semelhante ao MVC (Model, View e Controller). Mas vamos lá. Pra você utilizar esse modelo de pesquisa, primeiramente você deve estudar algumas coisas antes. Se você pular etapa não irá entender absolutamente nada. Pra eu tentar te ajudar, eu preciso saber o que e até onde você já sabe de java e banco de dados. Você sabe pelo menos gravar alguma coisa no banco de dados?
@wellingtonsoares332
@wellingtonsoares332 3 жыл бұрын
Muito bom amigo, obrigado pela ajuda!
@evertonsantos7516
@evertonsantos7516 8 жыл бұрын
fiz o que vc disse no vídeo, mas da o erro : Erro ao listar dados nullpointexception, Fiz algo errado?
@java-desktop4898
@java-desktop4898 8 жыл бұрын
Poste o código para analisarmos.
@evertonsantos7516
@evertonsantos7516 8 жыл бұрын
public class Tela1 extends javax.swing.JFrame { DefaultListModel MODELO; Conecta con; int Enter = 0; public Tela1() { initComponents(); SetIcon(); Lista.setVisible(false); MODELO = new DefaultListModel(); Lista.setModel(MODELO); private void ResultadoPesquisa(){ try{ con.resultset.first(); txtDataImput.setText(con.resultset.getString("DT_IMPUT")); txtCpf.setText(con.resultset.getString("CPF")); txtNomeCliente.setText(con.resultset.getString("NOME_DO_CLIENTE")); cbxCodVendedor.setSelectedItem(con.resultset.getString("COD_VENDEDOR")); cbxVendedor.setSelectedItem(con.resultset.getString("VENDEDOR")); cbxOrigem.setSelectedItem(con.resultset.getString("ORIGEM")); cbxCodProduto.setSelectedItem(con.resultset.getString("COD_PRODUTO")); cbxProduto.setSelectedItem(con.resultset.getString("PRODUTO")); cbxFamiliaProduto.setSelectedItem(con.resultset.getString("FAMILIA_PRODUTO")); }catch(Exception ex){ JOptionPane.showMessageDialog(null, "Erro no ResultadoPesquisa" + ex.getMessage()); } } public void ListaDePesquisa() { try { con.excecutaSQL("select * from PVENDAS where NOME_DO_CLIENTE like '" + txtNomeCliente.getText() + "%' ORDER BY NOME_DO_CLIENTE"); MODELO.removeAllElements(); int v = 0; while (con.resultset.next() & v < 4) { MODELO.addElement(con.resultset.getString("NOME_DO_CLIENTE")); v++; } if (v >= 1) { Lista.setVisible(true); } else { Lista.setVisible(false); } ResultadoPesquisa(); } catch (Exception ex) { JOptionPane.showMessageDialog(null, "Erro ao listar dados" + ex); } } public void MostrarPesquisa() { int Linha = Lista.getSelectedIndex(); if (Linha >= 0) { con.excecutaSQL("select * from PVENDAS where NOME_DO_CLIENTE like '" + "" + txtNomeCliente.getText() + "%' ORDER BY NOME_DO_CLIENTE LIMIT " + Linha + " , 1"); ResultadoPesquisa(); } } private void txtNomeClienteKeyReleased(java.awt.event.KeyEvent evt) { // INSERIR CÓDIGO PARA CONSULTA JTextField comp = (JTextField) evt.getComponent(); comp.setText(comp.getText().toUpperCase()); if (Enter == 0) { ListaDePesquisa(); } else { Enter = 0; } } private void txtNomeClienteActionPerformed(java.awt.event.ActionEvent evt) { Lista.setVisible(false); Enter = 1; } private void ListaMouseClicked(java.awt.event.MouseEvent evt) { MostrarPesquisa(); Lista.setVisible(false); }
@evertonsantos7516
@evertonsantos7516 8 жыл бұрын
Faltou a classe conexao, segue: public void Conectividade(){ try{ Class.forName(driver); con= DriverManager.getConnection(fonte, usuario, senha); }catch(ClassNotFoundException fon){ JOptionPane.showMessageDialog(null, "Driver localizado" + fon.getMessage()); }catch(SQLException fon){ JOptionPane.showMessageDialog(null, "Erro ao conectar com o serviço SqlServer", "ATENÇÂO", (2) ); } } public void excecutaSQL(String sql){ try{ statement = con.createStatement(ResultSet.TYPE_SCROLL_SENSITIVE, ResultSet.CONCUR_READ_ONLY); resultset = statement.executeQuery(sql); }catch(SQLException sqlex){ JOptionPane.showMessageDialog(null, "Não foi possível execultar o comando sql" + "" + sqlex + "O comando passado foi" + sql); } }
@java-desktop4898
@java-desktop4898 8 жыл бұрын
Então Éverton...Analizei seu código, Não conseguí achar a parte que faz a conexão com o banco de dados. Se você estiver utilizando uma classe de conexão igual ao apresentado, Você precisaria adicionar mais duas linhas de código na parte da inicialização do jframe. Ficaria mais ou menos assim: public Tela1() { initComponents(); SetIcon(); Lista.setVisible(false); MODELO = new DefaultListModel(); Lista.setModel(MODELO); con = new Conecta(); //Inicializa a classe Conecta con.conecta(); //Essa linha executa o método de conexão com o banco de dados
@java-desktop4898
@java-desktop4898 8 жыл бұрын
Adapitando os códigos faltante a sua classe ficaria assim: con = new Conecta(); con.Conectividade(); Veja se deu certo..
@thaisdizero7526
@thaisdizero7526 7 жыл бұрын
Mt bom o video, porem uso o postgresql e ao selecionar o nome do cliente ele altera nos campos, sempre pega o 1 nome que aparece na lista, poderia me indicar a maneira correta ?
@java-desktop4898
@java-desktop4898 7 жыл бұрын
Não entendi muito bem a sua dúvida. Tem um outro vídeo com uma forma mais prática de fazer esse tipo de pesquisa. La no outro vídeo é utilizado uma logica diferente onde é utilizado o código pra obter um resultado. É assim conforme você vai digitando, a lista é preenchida e automaticamente é preenchido um vetor com o código. Quando você seleciona um item da lista, por exemplo o primeiro item. Esse primeiro item é a linha zero, então o sistema irá buscar o valor do código da posição zero do vetor. Bom acho melhor você assistir o vídeo que entenderá melhor. kzbin.info/www/bejne/kJXXc5yidrmfaZY Caso não entenda, volte a comentar, pra chegarmos a uma solução.
@thaisdizero7526
@thaisdizero7526 7 жыл бұрын
Vlw cara deu certo seguindo os passos desse outro video que voce mandou
@java-desktop4898
@java-desktop4898 7 жыл бұрын
Maravilha. Ao invés de utilizar um vetor você também poderia utilizar um ArrayList pra guardar os códigos ou ID. Mas enfim. O importante é fazer funcionar não importa qual forma é utilizada. Com o passar do tempo você vai descobrir maneiras mais fáceis de fazer isso aí. Abraços. At.
@angeljustovicente7317
@angeljustovicente7317 6 жыл бұрын
Podría compartir el proyecto por favor.
@java-desktop4898
@java-desktop4898 6 жыл бұрын
drive.google.com/open?id=1--qC9Q4H8-yPcWVHygU-8RreDleQueOP
@samirfelisberto6404
@samirfelisberto6404 7 жыл бұрын
Olá amigo, muito obrigado por postar esse vídeo, muito útil! Gostaria de saber se eh possível fazer esse "busca do google" como se fosse um componente? Tipo, toda vez que eu quiser usar um desse, eu arrasto e solto da paleta, e passo os parâmetros a ele, como se fosse um componente normal. Obrigado mais uma vez, foi muito clara a sua explicação.
@java-desktop4898
@java-desktop4898 7 жыл бұрын
Esta resposta ficarei te devendo. Talvez até seja possível, mas eu não sei como fazer isso.
@samirfelisberto6404
@samirfelisberto6404 7 жыл бұрын
Muito obrigado por responder o/. Eu sempre quis fazer isso no Delphi também..mas nunca consegui. Ai pensei que Java fosse mais "poderoso". Mas talvez nos 2 dê pra fazer, sou eu que não sei nem por onde começa pra poder fazer rsrsrs Obrigado mais uma vez! E parabéns pelo vídeo.
@java-desktop4898
@java-desktop4898 7 жыл бұрын
Eu que agradeço. Independente da linguagem de programação muita coisa é possível. Quando menos se espera vem alguém e faz em minutos aquilo que a vida inteira tentamos fazer. O problema é que não é todo mundo que gosta de compartilhar os seus conhecimentos.
@Crusader_No_Regret
@Crusader_No_Regret 6 жыл бұрын
lista é uma variável ou um objeto?????
@java-desktop4898
@java-desktop4898 6 жыл бұрын
Não sei se vou te responder corretamente, pois sou um aprendiz como você. Mas pra mim a bagaça funciona mais ou menos assim: O Jlist é um componente assim como o jtextfield. Esse Jlist é o local onde a nossa lista será inserida. A lista é um conjunto em que os valores será armazenado. Cada valor armazenado nessa lista seria um objeto. Resumindo, a lista é uma variável onde será armazenado os objetos. Exemplo List lista = new ArrayList(); Se eu estiver errado, me corrija, afinal estamos no mesmo barco onde o destino é o conhecimento.
@Crusader_No_Regret
@Crusader_No_Regret 6 жыл бұрын
Java - Desktop Na vdd acho q a lista ou o arraylist é a variável, pois um vetor armazena dados, agora o Jlist é um objeto ou componente, pois ele pega os valores do vetor e apenas exibe na tela.
@java-desktop4898
@java-desktop4898 6 жыл бұрын
Esses assuntos ou dúvidas prefiro não comentar. Ele estaria relacionado a parte teórica do coisa. O que realmente importa na nós aprendizes é entender pra que serve e o que faz, é claro que não podemos descartar a parte teórica, mas é na prática que realmente ganhamos um bom aprendizado. Abç. At.
@Crusader_No_Regret
@Crusader_No_Regret 6 жыл бұрын
@@java-desktop4898 Com certeza, valeu 👍
@mohammadazaz4967
@mohammadazaz4967 6 жыл бұрын
instead of JList can we add JTable. if yes then how we can do it give us a tutorial it really gonna helpful plz.
@java-desktop4898
@java-desktop4898 6 жыл бұрын
You can trade it. The logic is the same. The only change is in the type of component. At the moment I do not have time to do another tutorial, but I will make this video in the near future.
@viniciusgomes1513
@viniciusgomes1513 6 жыл бұрын
voce tem de pesquisa em um combobox ? :)
@java-desktop4898
@java-desktop4898 6 жыл бұрын
Dê uma pesquisada no google escrevendo "altocomplete jcombobox". Vai aparecer um monte de vídeo que pode te ajudar no que você precisa.Tem muita coisa legal. Quando sobrar um tempinho vou fazer uma versão brasileira desse método se é que já não existe.
@jhonjoker9597
@jhonjoker9597 6 жыл бұрын
Amigo, puedes compartir el proyecto?
@java-desktop4898
@java-desktop4898 6 жыл бұрын
Cuál es tu dirección de correo electrónico?
@alejandrovazquez2104
@alejandrovazquez2104 7 жыл бұрын
Muy bueno amigo
@java-desktop4898
@java-desktop4898 7 жыл бұрын
Gracias
@santiagoodragao9961
@santiagoodragao9961 6 жыл бұрын
Posta aqui sua class de conexao :(
@java-desktop4898
@java-desktop4898 6 жыл бұрын
Vi no seu canal alguns tutoriais sobre o java. Muito boa a iniciativa. Gravar vídeo e postar no youtube não é uma tarefa fácil. Qualquer pessoa que tire um tempo pra ajudar, tem meu total apoio. O lado bom de você repassar o que aprendeu é que você acaba aprendendo e adquirindo muito mais conhecimento que já tem e por aí vai. Segue abaixo a classe de conexão utilizada no vídeo acima. import java.sql.*; import javax.swing.*; public class Conexao { final private String url = "jdbc:mysql://localhost:3306/estacionamento"; final private String driver = "com.mysql.jdbc.Driver"; final private String usuario = "root"; final private String senha = ""; private Connection conexao; public Statement statement; public ResultSet resultset; public void conecta() { try { Class.forName(driver); conexao = DriverManager.getConnection(url, usuario, senha); } catch (ClassNotFoundException Fonte) { JOptionPane.showMessageDialog(null, "Driver nao localizado"); } catch (SQLException Fonte) { JOptionPane.showMessageDialog(null, "Erro ao conectar com o servidor MYSQL", "ATENÇAO", (2)); } } public void desconecta() { try { conexao.close(); } catch (SQLException fech) { JOptionPane.showMessageDialog(null, "Erro ao fechar conexao com o banco de dados" + fech); } } public void executaSQL(String sql) { try { statement = conexao.createStatement(ResultSet.TYPE_SCROLL_SENSITIVE, ResultSet.CONCUR_READ_ONLY); resultset = statement.executeQuery(sql); } catch (SQLException sqlex) { JOptionPane.showMessageDialog(null, "Nao foi possível executar o comando sql" + "" + sqlex + "O comando passado foi" + sql); } } }
@santiagoodragao9961
@santiagoodragao9961 6 жыл бұрын
Caramba cara, muito obrigado! Estou acompanhando seu canal e várias aulas. Postei agora recentemente coisas simples pra mim, mas para muitas pessoas que estão começando pode ser algo ainda um pouco complicado igual foi pra mim no início. E posso de certeza dizer que me inspirei nas suas vídeo-aulas.
@java-desktop4898
@java-desktop4898 6 жыл бұрын
Tenho grande admiração pelo pessoal que tiram um tempinho pra criar vídeos e ajudar o pessoal. Programação é bem complicado pra quem está iniciando então toda ajuda oferecida é bem vinda. Só não dê muita importância caso haja um número de visualização menor do que o esperado. Se a gente for reparar nesse detalhe acabamos desanimando. Mas um dia pode ter certeza de que o seu, meu ou qualquer vídeo do youtube pode fazer a diferença pra alguém que esteja precisando. Se alguém não souber fazer e precisar de ajuda, o vídeo vai estar la pra ajudar. Preparar vídeos exige tempo e dedicação, mas no final de tudo a gente é abençoado por Deus.
@santiagoodragao9961
@santiagoodragao9961 6 жыл бұрын
Verdade! rs Seus vídeos me ajudam demais rsrs! Obrigado.
Pesquisa igual a do google no java jTextField + jList  Atualização
4:51
VIP ACCESS
00:47
Natan por Aí
Рет қаралды 30 МЛН
coco在求救? #小丑 #天使 #shorts
00:29
好人小丑
Рет қаралды 120 МЛН
Java Programming - Google Search Suggestions
9:04
Ra Ven
Рет қаралды 18 М.
I Redesigned the ENTIRE YouTube UI from Scratch
19:10
Juxtopposed
Рет қаралды 810 М.
JTable in JAVA Swing | Delete Selected Row From JTable
9:07
Knowledge to Share
Рет қаралды 69 М.
Java Swing S1E2 : JList - Filter/Search using JTextField
9:30
ProgrammingWizards TV
Рет қаралды 33 М.
VIP ACCESS
00:47
Natan por Aí
Рет қаралды 30 МЛН