Opa, aqui vai o codigo. Tirei algumas instruções pra nao poluir muito.
ackage br.com.equipamento.telas;
import java.sql.*;
import br.com.equipamento.dal.ModuloConexaoEQ;
import …
/
public class TelaAlteraSerialEQ extends javax.swing.JInternalFrame {
Connection conexao = null;
PreparedStatement pst = null;
ResultSet rs = null;
public TelaAlteraSerialEQ() {
initComponents();
conexao=ModuloConexaoEQ.conector();
this.populaJcmbSerial();
}
// ----- inicio do metodo alterar ---------
private void alterar() {
// ----- checar se existe duplicidade de serial
String sql1 = “select * from dados where num_serie=?”;
try {
pst = conexao.prepareStatement(sql1);
pst.setString(1, (String) txtSerie.getText().trim());
rs=pst.executeQuery();
if (rs.next()) {
JOptionPane.showMessageDialog(null, “ESSE SERIAL JA EXISTE”);
}
else {
// ---- fim do check de duplicidade de serial
String sql = “update dados set codigo_dados=?,num_serie=? where codigo_dados=?”;
try {
pst = conexao.prepareStatement(sql);
pst.setString(1, txtCodigo.getText());
pst.setString(2, txtSerie.getText().trim());
pst.setString(3, txtCodigo.getText());
// validação dos campos obrigatórios
if (
(txtSerie.getText().isEmpty())
) {
JOptionPane.showMessageDialog(null, “Preencha todos os campos obrigatorios”);
} else {
// a linha abaixo atualiza a tabela tbusuarios com os dados do formulario
// a estrutura abaixo, é para confirmar a inserção dos dados na tabela
int adicionado = pst.executeUpdate();
if (adicionado > 0) {
JOptionPane.showMessageDialog(null, “Numero de serie alterado com sucesso”);
///* ------------ AQUI COMEÇA MEU PROBLEMA…
// ------------------------------------------------------------------
Se a alteração do serial for feita,
Quero que a TelaAlteraSerialEQ seja recarregada para resetar o jcombobox e
mostrar o novo valor do serial que foi alterado…
Mas, Só funciona o dispose…
TelaAlteraSerialEQ s = new TelaAlteraSerialEQ();
s.dispose();
s.setVisible(true);
S.repaint();
S.validate();
// comandos baixo paa limpar os campos após a inclusão na tabela
txtSerie.setText(null);
txtCodigo.setText(null);
}
}
} catch (Exception e) {
JOptionPane.showMessageDialog(null, e );
}
}
} // ---- do primeiro try
catch (Exception e) { }
} // fim do metodo alterar
// -------- metodo pega serial do comboBox
public void populaJcmbSerial ()
{
String sql = “select num_serie from dados order by num_serie”;
try {
pst = conexao.prepareStatement(sql);
rs = pst.executeQuery();
while(rs.next())
{
cmbSerial.addItem(rs.getString(“num_serie”));
}
} catch (Exception e) {
JOptionPane.showMessageDialog(null, e);
}
}
// ------- inicio novo metodo consulta serial –
private void consulta_serial() {
String sql=“select * from dados where num_serie = ?”;
try {
pst = conexao.prepareStatement(sql);
pst.setString(1, (String) cmbSerial.getSelectedItem());
rs=pst.executeQuery();
if (rs.next()) {
String perfil=“setor valido”;
System.out.println("O setor é: "+perfil);
}else{
JOptionPane.showMessageDialog(null, “Serial não existe”);
}
// a linha abaixo, usa a biblioteca rs2xml.jar para preencher a tabela
rs=pst.executeQuery();
TblClientes.setModel(DbUtils.resultSetToTableModel(rs));
etc.....
}
// ------- fim do novo metodo consulta serial –
// inicio do metodo preencher os dados do formulario
public void setar_campos(){
int setar = TblClientes.getSelectedRow();
txtCodigo.setText(TblClientes.getModel().getValueAt(setar,0).toString());
txtSerie.setText(TblClientes.getModel().getValueAt(setar,1).toString());
}
/**
* This method is called from within the constructor to initialize the form.
* WARNING: Do NOT modify this code. The content of this method is always
* regenerated by the Form Editor.
*/
private void btnEnviarActionPerformed(java.awt.event.ActionEvent evt) {
// TODO add your handling code here:
alterar();
}
private void btnProcuraActionPerformed(java.awt.event.ActionEvent evt) {
// TODO add your handling code here:
consulta_serial();
}
private void btnPreencheActionPerformed(java.awt.event.ActionEvent evt) {
// TODO add your handling code here:
setar_campos();
}
private void btnExcluiActionPerformed(java.awt.event.ActionEvent evt) {
// TODO add your handling code here:
remover();
}
private void cmbSerialItemStateChanged(java.awt.event.ItemEvent evt) {
// TODO add your handling code here:
}