Galera o problema é o seguinte:
Criei um formulário para cadastro de Cliente.
Para inserir os dados tá tudo certo, mas para alterar os dados gostaria de um JOptionPane onde o usuário digitasse o nome a alterar.
A partir daí o programa buscaria os dados e jogaria todos em seus respectivos campos.
Aí o usuário apenas alteraria o que desejasse e salvaria.
Alguma idéia? Não estou consetguindo que o JOptionPane busque os dados no Banco.
E também quando o usuário for digitando o nome do cliente, no campo texto do JOP vá aparecendo os nomes possíveis existentes no banco.
Grande Abraço!
JOptionPane obter String BD
5 Respostas
Use um InputDialog e guarde o que foi digitado, depois faça uma busca no BD com essa informação…
String info = JOptionPane.showInputDialog(null, “Digite Informação”);
Depois é só criar um metodo que receba como parametro a String digitada.
exemplo:
buscarInformacaoNoBD(info);
Certo!
E o que eu posso usar para que quando o Usuário for digitando o nome do Cliente no JOPtionPane, no campo vá aparecendo o texto que existe no BD?
EX: Quando digitar a letra “A”, apareça os nomes que comecem com “A”, excluindo o restante que não interessa?
Abraço
Nesse caso acho que o JOptionPane não é a melhor solução, vc deve fazer um combobox ou algo parecido já preenchido com todos os nomes do banco e ir filtrando isso…
Se o seu sistema for web, da pra colocar uns efeitos do AJAX…
Deixa ver se eu entendi, vc quer que numa caixa de dialogo quando o usuario digitar aparece em um lugar JTable por exemplo, as informações que coicidirem com as letras digitadas certo?
Se for isso, acho que com o JOptionPane não tem como fazer, seria bom vc fazer o que o Danillo disse,
Porém se vc quiser se arriscar eu tenho uma solução legal:
Vc criaria uma JFrame com uma JTextArea nele e com um JTextArea ou se vc preferir um JTable, dai vc trataria os eventos de tecla do JTextArea, ou seja, a medida que o usuario for digitando no JTextArea vc vai tratando os eventos gerados,
exemplo:
import javax.swing.*;
import java.awt.*;
import java.awt.event.*;
public class Estudos extends JFrame implements KeyListener{
private JTextArea textArea;
public Estudos(){
super("Eventos do Mouse e Teclado");
Container c = getContentPane();
FlowLayout layout = new FlowLayout(FlowLayout.LEFT);
c.setLayout(layout);
textArea = new JTextArea(100, 150);
textArea.setEnabled(false);
textArea.setDisabledTextColor(Color.BLACK);
c.add(textArea);
addKeyListener(this);
setSize(350, 250);
setVisible(true);
}
public void keyPressed(KeyEvent e){
textArea.setText(
String.format("Tecla: %s - Código Unicode: %d",
e.getKeyText(e.getKeyCode()), e.getKeyCode()));
}
public void keyReleased(KeyEvent e){
// sem implementação
}
public void keyTyped(KeyEvent e){
// sem implementação
}
public static void main(String args[]){
Estudos app = new Estudos();
app.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
}
}
Tenta abstrair as principais funcionalidades desse codigo e implementar aquilo que vc quer fazer.
espero ter ajudado!
falows