Pelo TAB do teclado fazer uma consulta, como faço isso?

gostaria de no momento em que eu inserir o valor no JTextField “Cód do Cliente” e der um Tab, automaticamente já atualize a informação do JTextField “Nome do Cliente”, ou seja, sem que eu precise clicar no botão “buscar” p/ realizar a consulta no banco de Dados.

Obs: Não postei o código, pois acho que não será necessário p/ esta explicação… porém caso seja, me avisem…

Desde já agradeço, abçs

você vai precisar implementar um KeyListener…

dá uma olhada aqui : http://www.java2s.com/Code/Java/Event/DemonstratingtheKeyListener.htm

Mas por outro lado não seria melhor usar o Enter em vez do TAB? já que o tab tira o Foco do TextField quando pressionado…daí dependendo do que exatamente você quizer talvez seja melhor um FocusListener

pode ser cara

to querendo realmente aprender a fazer uma tecla de atalho
independente da tecla

obrigado

Se for pelo ENTER faça assim

if (evt.getKeyCode() == 10) {
....
 }

isso dentro da propriedade KEYPRESSED do JtextField

[]'s

não sabia que dava pra fazer isso, vai ser bem util pra mim agora hehe!

Valeu!

melhorando:

private void jTextFieldCodigoKeyPressed(java.awt.event.KeyEvent evt) {
if (evt.getKeyCode() == 10) {
//seu codigo
}
} 

[]'s

COMO POSSO CHAMAR O getJButtonInserir ???

por uma tecla qualquer ( F10, F5 , ENTER, TAB …)

[code]package Visual;

import javax.swing.SwingUtilities;

import javax.swing.JLabel;
import javax.swing.JPanel;

import javax.swing.JFrame;

import java.awt.Rectangle;
import java.awt.Color;
import java.awt.Font;

import java.sql.SQLException;
import java.text.DateFormat;
import java.util.Calendar;
import java.util.GregorianCalendar;

import javax.swing.JFormattedTextField;
import javax.swing.JOptionPane;
import javax.swing.JTextField;
import javax.swing.JButton;
import javax.swing.BorderFactory;

import DAO.CadastroProduto;
import DAO.Consulta;

import DAO.CadastroDAO;

import javax.swing.ImageIcon;
import java.awt.SystemColor;
import java.awt.Toolkit;
import java.awt.event.KeyEvent;

import javax.swing.JTextArea;

public class cadastroProduto {

private GregorianCalendar data=new GregorianCalendar();  
private JFrame jFrame = null;  //  @jve:decl-index=0:visual-constraint="10,10"
private JPanel jContentPane1 = null;
private JLabel jLabelTotal1 = null;
private JLabel jLabelCodigo = null;
private JLabel jLabeDescricao = null;
private JTextField jTextFieldCodigo ;
private JTextField jTextFieldDescricao = null;
private JLabel jLabelFornecedor = null;
private JTextField jTextFieldFornecedor = null;
private JLabel jLabelQuantidade = null;
private JTextField jTextFieldQuantidade = null;
private JLabel jLabelObservacoes = null;
private JLabel jLabelData = null;
private JTextField jTextFielddata = null;
private JButton jButtonInserir = null;
protected CadastroProduto lo;
private JButton jButtonConsultar = null;
private JButton jButtonDeletar = null;
private JTextArea jTextAreaObservacao = null;
private JLabel jLabelValor = null;
private JTextField jTextFieldValor = null;
private JButton exitMenuItem = null;

/**
 * This method initializes jContentPane1	
 * 	
 * @return javax.swing.JPanel	
 */
private JPanel getJContentPane1() {
	if (jContentPane1 == null) {
		jLabelValor = new JLabel();
		jLabelValor.setBounds(new Rectangle(331, 76, 86, 28));
		jLabelValor.setText("Valor $ :");
		jLabelValor.setFont(new Font("Comic Sans MS", Font.BOLD, 18));
		jLabelData = new JLabel();
		jLabelData.setBounds(new Rectangle(351, 166, 51, 26));
		jLabelData.setText("Data:");
		jLabelData.setFont(new Font("Comic Sans MS", Font.BOLD, 18));
		jLabelObservacoes = new JLabel();
		jLabelObservacoes.setBounds(new Rectangle(17, 206, 122, 26));
		jLabelObservacoes.setText("Observações:");
		jLabelObservacoes.setFont(new Font("Comic Sans MS", Font.BOLD, 18));
		jLabelQuantidade = new JLabel();
		jLabelQuantidade.setBounds(new Rectangle(15, 165, 115, 26));
		jLabelQuantidade.setText("Quantidade:");
		jLabelQuantidade.setFont(new Font("Comic Sans MS", Font.BOLD, 18));
		jLabelFornecedor = new JLabel();
		jLabelFornecedor.setBounds(new Rectangle(270, 204, 105, 26));
		jLabelFornecedor.setText("Fornecedor:");
		jLabelFornecedor.setFont(new Font("Comic Sans MS", Font.BOLD, 18));
		jLabeDescricao = new JLabel();
		jLabeDescricao.setBounds(new Rectangle(14, 118, 95, 26));
		jLabeDescricao.setText("Descrição:");
		jLabeDescricao.setFont(new Font("Comic Sans MS", Font.BOLD, 18));
		jLabelCodigo = new JLabel();
		jLabelCodigo.setBounds(new Rectangle(16, 76, 70, 27));
		jLabelCodigo.setText("Código:");
		jLabelCodigo.setFont(new Font("Comic Sans MS", Font.BOLD, 18));
		jLabelTotal1 = new JLabel();
		jLabelTotal1.setBounds(new Rectangle(14, 14, 402, 42));
		jLabelTotal1.setText("CADASTRO DE PRODUTOS");
		jLabelTotal1.setFont(new Font("Arial Black", Font.BOLD, 24));
		jContentPane1 = new JPanel();
		jContentPane1.setLayout(null);
		jContentPane1.setBackground(Color.lightGray);
		jContentPane1.setBorder(BorderFactory.createLineBorder(Color.black, 5));
		jContentPane1.add(jLabelTotal1, null);
		jContentPane1.add(jLabelCodigo, null);
		jContentPane1.add(jLabeDescricao, null);
		jContentPane1.add(getJTextFieldCodigo(), null);
		jContentPane1.add(getJTextFieldDescricao(), null);
		jContentPane1.add(jLabelFornecedor, null);
		jContentPane1.add(getJTextFieldFornecedor(), null);
		jContentPane1.add(jLabelQuantidade, null);
		jContentPane1.add(getJTextFieldQuantidade(), null);
		jContentPane1.add(jLabelObservacoes, null);
		jContentPane1.add(jLabelData, null);
		jContentPane1.add(getJTextFielddata(), null);
		jContentPane1.add(getJButtonInserir(), null);
		jContentPane1.add(getJButtonConsultar(), null);
		jContentPane1.add(getJButtonDeletar(), null);
		jContentPane1.add(getJTextAreaObservacao(), null);
		jContentPane1.add(jLabelValor, null);
		jContentPane1.add(getJTextFieldValor(), null);
		jContentPane1.add(getExitMenuItem(), null);
		
		
	}
	return jContentPane1;
}


/**
 * This method initializes jTextFieldCodigo	
 * 	
 * @return javax.swing.JTextField	
 */
private JTextField getJTextFieldCodigo() {
	if (jTextFieldCodigo == null) {
		jTextFieldCodigo = new JTextField();
		jTextFieldCodigo.setBounds(new Rectangle(86, 78, 95, 25));
		jTextFieldCodigo.setFont(new Font("Arial", Font.BOLD, 14));
	}
	return jTextFieldCodigo;
}

/**
 * This method initializes jTextFieldDescricao	
 * 	
 * @return javax.swing.JTextField	
 */
public JTextField getJTextFieldDescricao() {
	if (jTextFieldDescricao == null) {
		jTextFieldDescricao = new JTextField();
		jTextFieldDescricao.setBounds(new Rectangle(108, 119, 423, 28));
		jTextFieldDescricao.setFont(new Font("Arial", Font.BOLD, 14));
	}
	return jTextFieldDescricao;
}

/**
 * This method initializes jTextFieldFornecedor	
 * 	
 * @return javax.swing.JTextField	
 */
public JTextField getJTextFieldFornecedor() {
	if (jTextFieldFornecedor == null) {
		jTextFieldFornecedor = new JTextField();
		jTextFieldFornecedor.setBounds(new Rectangle(375, 202, 154, 29));
		jTextFieldFornecedor.setFont(new Font("Arial", Font.BOLD, 14));
	}
	return jTextFieldFornecedor;
}

/**
 * This method initializes jTextFieldQuantidade	
 * 	
 * @return javax.swing.JTextField	
 */
private JTextField getJTextFieldQuantidade() {
	if (jTextFieldQuantidade == null) {
		jTextFieldQuantidade = new JTextField();
		jTextFieldQuantidade.setBounds(new Rectangle(127, 165, 92, 28));
		jTextFieldQuantidade.setFont(new Font("Arial", Font.BOLD, 14));
	}
	return jTextFieldQuantidade;
}

/**
 * This method initializes jTextFielddata	
 * @param <vData>
 * 	
 * @return javax.swing.JTextField	
 */
private <vData> JTextField getJTextFielddata() {
	if (jTextFielddata == null) {
		jTextFielddata = new JTextField();
		jTextFielddata.setBounds(new Rectangle(399, 160, 123, 32));
	     javax.swing.JPanel painel=new javax.swing.JPanel();  
         painel.setLayout(new java.awt.FlowLayout());  
         jTextFielddata=new JFormattedTextField(DateFormat.getDateInstance(DateFormat.MEDIUM));  
         jTextFielddata.setText(data.get(Calendar.DAY_OF_MONTH)+"/"+(data.get(Calendar.MONTH)+1)+"/"+(data.get(Calendar.YEAR)));  
         jTextFielddata.setBounds(new Rectangle(404, 159, 123, 32));
         jTextFielddata.setFont(new Font("Arial", Font.BOLD, 14));
         jTextFielddata.setColumns(7);  
   
	}
	return jTextFielddata;
}


   
private JButton getJButtonInserir() {
	if (jButtonInserir == null) {
		jButtonInserir = new JButton();
		jButtonInserir.setBounds(new Rectangle(554, 72, 137, 50));
		jButtonInserir.setFont(new Font("Encore NorScript", Font.BOLD, 14));
		jButtonInserir.setText("INSERIR");
		jButtonInserir.setIcon(new ImageIcon("C:/Documents and Settings/Diego Beltrão/Desktop/botões/images.jpg"));
		jButtonInserir.setBackground(SystemColor.controlLtHighlight);
		jButtonInserir.setToolTipText("Inserir Cadastro no Banco");
		jButtonInserir.addActionListener(new java.awt.event.ActionListener() {
			public void actionPerformed(java.awt.event.ActionEvent e) {
                CadastroProduto lo = new CadastroProduto(jTextFieldCodigo.getText(),jTextFieldValor.getText(),jTextFieldFornecedor.getText(),jTextFieldDescricao.getText(),jTextFieldQuantidade.getText(),jTextFielddata.getText(),jTextAreaObservacao.getText());
				
				try{

					CadastroDAO dao = new CadastroDAO();
			        dao.inserir(lo);
			    	jTextFieldCodigo.setText("");
					jTextFieldValor.setText("");
					jTextFieldFornecedor.setText("");
					jTextFieldDescricao.setText("");
					jTextFieldQuantidade.setText("");
			        jTextAreaObservacao.setText("");
				
					
					
				}
				catch(SQLException e1){
					e1.printStackTrace();
				}
			

			}
		});
		
	}
	return jButtonInserir;
}

/**
 * This method initializes jButtonConsultar	
 * 	
 * @return javax.swing.JButton	
 */
private JButton getJButtonConsultar() {
	if (jButtonConsultar == null) {
		jButtonConsultar = new JButton();
		jButtonConsultar.setBounds(new Rectangle(553, 221, 139, 50));
		jButtonConsultar.setFont(new Font("Encore NorScript", Font.BOLD, 14));
		jButtonConsultar.setIcon(new ImageIcon("C:/Documents and Settings/Diego Beltrão/Desktop/botões/pesquisar/254.jpg"));
		jButtonConsultar.setText("CONSULTA");
		jButtonConsultar.setBackground(SystemColor.controlLtHighlight);
		jButtonConsultar.setToolTipText("Consulta Cadastro no Banco");
		jButtonConsultar.addActionListener(new java.awt.event.ActionListener() {
			public void actionPerformed(java.awt.event.ActionEvent e) {
				
     CadastroProduto procurar = new CadastroProduto(jTextFieldCodigo.getText());
				
				try{
	                Consulta dao = new Consulta();
	                
	                
					String valor = dao.Valor(procurar);
					String fonecedor = dao.Fornecedor(procurar);
					String data = dao.Data(procurar);
					String descricao = dao.Descricao(procurar);
					String Observacao = dao.Observacao(procurar);
					
                    jTextFieldFornecedor.setText(fonecedor);
                    jTextFieldValor.setText(valor);
                    jTextFielddata.setText(data);
                    jTextFieldDescricao.setText(descricao);
                    jTextAreaObservacao.setText(Observacao);
				}catch(SQLException e3) {
				JOptionPane.showMessageDialog(null,"ERRO NO COMANDO !!"+e3);
				
				
				
			}
			}});
	
	
	}
	return jButtonConsultar;
}

/**	 * This method initializes jButtonDeletar	
 * 
 * return javax.swing.JButton	
 */
private JButton getJButtonDeletar() {
	if (jButtonDeletar == null) {
		jButtonDeletar = new JButton();
		jButtonDeletar.setBounds(new Rectangle(553, 146, 137, 50));
		jButtonDeletar.setFont(new Font("Encore NorScript", Font.BOLD, 14));
		jButtonDeletar.setBackground(SystemColor.activeCaptionText);
		jButtonDeletar.setIcon(new ImageIcon("C:/Documents and Settings/Diego Beltrão/Desktop/botões/excluir/35.jpg"));
		jButtonDeletar.setText("DELETAR");
		jButtonDeletar.setToolTipText("Deletar Cadastro do Banco");
		jButtonDeletar.addActionListener(new java.awt.event.ActionListener() {
			public void actionPerformed(java.awt.event.ActionEvent e) {
				
				CadastroProduto u = new CadastroProduto(jTextFieldCodigo.getText());
				try{
					CadastroDAO dao = new CadastroDAO();
					dao.Excluir(u);
					jTextFieldCodigo.setText("");
					
					if(jTextFieldCodigo.getText().isEmpty()){
						JOptionPane.showMessageDialog(null, "REMOVIDO");
						jTextFieldCodigo.setText("");
						jTextFieldValor.setText("");
						jTextFieldFornecedor.setText("");
						jTextFieldDescricao.setText("");
						jTextFieldQuantidade.setText("");
				        jTextAreaObservacao.setText("");
					}
					
					
				}catch(SQLException e3){
					
					JOptionPane.showMessageDialog(null, "Erro no Comando !!" + e3);
				}

				
				
				
			}
		});
	}
	return jButtonDeletar;
}

/**
 * This method initializes jTextAreaObservacao	
 * 	
 * @return javax.swing.JTextArea	
 */
private JTextArea getJTextAreaObservacao() {
	if (jTextAreaObservacao == null) {
		jTextAreaObservacao = new JTextArea();
		jTextAreaObservacao.setBounds(new Rectangle(15, 240, 516, 110));
		jTextAreaObservacao.setFont(new Font("Arial", Font.BOLD, 14));
	}
	return jTextAreaObservacao;
}

/**
 * This method initializes jTextFieldValor	
 * 	
 * @return javax.swing.JTextField	
 */
private JTextField getJTextFieldValor() {
	if (jTextFieldValor == null) {
		jTextFieldValor = new JTextField();
		jTextFieldValor.setBounds(new Rectangle(416, 74, 113, 31));
		jTextFieldValor.setFont(new Font("Arial", Font.BOLD, 14));
	}
	return jTextFieldValor;
}

/**
 * This method initializes exitMenuItem	
 * 	
 * @return javax.swing.JButton	
 */
private JButton getExitMenuItem() {
	if (exitMenuItem == null) {
		exitMenuItem = new JButton();
		exitMenuItem.setBounds(new Rectangle(553, 295, 137, 50));
		exitMenuItem.setFont(new Font("Comic Sans MS", Font.BOLD, 18));
		exitMenuItem.setToolTipText("Voltar para Principal");
		exitMenuItem.setIcon(new ImageIcon("C:/Documents and Settings/Diego Beltrão/Desktop/botões/voltar.jpg"));
		exitMenuItem.setText("");
		exitMenuItem.setBackground(SystemColor.activeCaptionText);
		exitMenuItem.addActionListener(new java.awt.event.ActionListener() {
			public void actionPerformed(java.awt.event.ActionEvent e) {
				System.exit(1);
			}
		});
	}
	return exitMenuItem;
}


/**
 * @param args
 */
public static void main(String[] args) {
	// TODO Auto-generated method stub
	SwingUtilities.invokeLater(new Runnable() {
		public void run() {
			cadastroProduto application = new cadastroProduto();
			application.getJFrame().setVisible(true);

		}
	});
}

/**
 * This method initializes jFrame
 * 
 * @return javax.swing.JFrame
 */
JFrame getJFrame() {
	if (jFrame == null) {
		jFrame = new JFrame();
		jFrame.setDefaultCloseOperation(JFrame.DISPOSE_ON_CLOSE);
		jFrame.setSize(721, 485);
		jFrame.setLocationRelativeTo(null);
		jFrame.setIconImage(Toolkit.getDefaultToolkit().getImage("C:/Documents and Settings/Diego Beltrão/Desktop/botões/ki.jpg"));
		jFrame.setContentPane(getJContentPane1());
		jFrame.setTitle(".:");
	}
	return jFrame;
}

}

[/code]