[b]Pessoal, por favor preciso da ajuda de vcs, porque estou enfrentando dificuldades para mostrar numa JCOMBOBOX dados de um campo de uma tabela da base de dados.Se alguem puder me ajudar e ate indicar um tutorial eu aceito.
[/b]
[b]Pessoal, por favor preciso da ajuda de vcs, porque estou enfrentando dificuldades para mostrar numa JCOMBOBOX dados de um campo de uma tabela da base de dados.Se alguem puder me ajudar e ate indicar um tutorial eu aceito.
[/b]
Oi
LYZ, vc poderia ser mais especifica? Tipo, seu problema é com o acesso ao DB pra fazer isso ou pra tirar os dados do ResultSet e colocar no Combo? Ou é tudo?
T+
Oi,Jeveaux!! Bom eu ja consegui mostrar os dados de umcampoda tabela na combo.O problema agora é gravar estes dados recuperados.Outra duvida que tenho é como testar a conexão depois de ter uma classe só para conectar.Se vc puder me dar um help eu agradeço muito .Bom vou enviar o codigo para vc dar uma olhada:
import javax.swing.;
import java.awt.;
import java.awt.event.;
import java.io.;
import java.util.;
import java.sql.;
public class TesteCombo extends JFrame{
JPanel p1,p2,p3,p4,p5,p6,p7;
JLabel tipoMaterial,codigoMaterial,predioMaterial,
locomoveMaterial,statusMaterial, obsStatusMaterial;
JComboBox insereTipoMaterial, inserePredioMaterial,insereStatusMaterial;
JTextField insereCodigoMaterial;
JButton bNovo,bGravar,bCancelar,bProcurar,bAlterar,bExcluir, bSair;
JRadioButton locomoveMaterialSim,locomoveMaterialNao;
ButtonGroup radioGroupLocomove;
JTextArea insereObsStatusMaterial;
Connection conect;
Statement stmt;
ResultSet rs;
public static void main(String args[])
{
TesteCombo TC = new TesteCombo();
TC.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); //permite que a janela seja //fechada
TC.setVisible(true); //torna a janela visivel
}
TesteCombo(){
super("Testando Combo");
Container containerTC = getContentPane();
containerTC.setLayout(new GridLayout(8,0));
//p1
bNovo = new JButton(" Novo ");
bGravar = new JButton(" Gravar ");
bCancelar = new JButton(" Cancelar ");
bProcurar = new JButton(" Procurar ");
bAlterar = new JButton(" Alterar ");
bExcluir = new JButton(" Excluir ");
bSair = new JButton(" Sair ");
p1=new JPanel();//contem os botoes
p1.add(bNovo);
p1.add(bGravar);
p1.add(bCancelar);
p1.add(bProcurar); //linha 50
p1.add(bAlterar);
p1.add(bExcluir);
p1.add(bSair);
p1.setLayout(new FlowLayout(FlowLayout.CENTER));
containerTC.add(p1);
//p2
tipoMaterial = new JLabel("Tipo de Material");
insereTipoMaterial = new JComboBox();
p2 = new JPanel();
p2.add(tipoMaterial);
p2.add(insereTipoMaterial);
p2.setLayout(new FlowLayout(FlowLayout.LEFT));
containerTC.add(p2);//contem o Tipo de Material
//p3
codigoMaterial = new JLabel("Codigo");
insereCodigoMaterial = new JTextField(7);
p3 = new JPanel();
p3.add(codigoMaterial);
p3.add(insereCodigoMaterial);
p3.setLayout(new FlowLayout(FlowLayout.LEFT));
containerTC.add(p3);//contem o Codigo do Material
//containerCM.addSeparator();
//p4 predio onde se ocaliza o material
predioMaterial = new JLabel("Predio");
inserePredioMaterial = new JComboBox();
p4 = new JPanel();
p4.add(predioMaterial);
p4.add(inserePredioMaterial);
p4.setLayout(new FlowLayout(FlowLayout.LEFT));
containerTC.add(p4);
//p5 locomocao do material
locomoveMaterial = new JLabel("Material Locomovível: ");
locomoveMaterialSim = new JRadioButton("Sim",true);
locomoveMaterialNao = new JRadioButton("Nao",false);
radioGroupLocomove = new ButtonGroup();
radioGroupLocomove.add(locomoveMaterialSim);
radioGroupLocomove.add(locomoveMaterialNao);
p5 = new JPanel();
p5.add(locomoveMaterial);
p5.add(locomoveMaterialSim);
p5.add(locomoveMaterialNao);
p5.setLayout(new FlowLayout(FlowLayout.LEFT));
containerTC.add(p5);//contem o predio onde se localiza o material //linha 100
//p6 p7 e p8 status do material
statusMaterial = new JLabel("Status");
insereStatusMaterial = new JComboBox();
p6= new JPanel();
p6.add(statusMaterial);
p6.add(insereStatusMaterial);
p6.setLayout(new FlowLayout(FlowLayout.LEFT));
containerTC.add(p6);
obsStatusMaterial=new JLabel("Observação:");
insereObsStatusMaterial= new JTextArea(10,25);
p7=new JPanel();
p7.add(obsStatusMaterial);
p7.add(insereObsStatusMaterial);
p7.setLayout(new FlowLayout(FlowLayout.LEFT));
containerTC.add(p7);
setSize(810,610);
setLocation(200,200);
try
{
Class.forName("com.microsoft.jdbc.sqlserver.SQLServerDriver");
conect=DriverManager.getConnection("jdbc:microsoft:sqlserver://192.168.0.100;DatabaseName=SIREM","sa","");
stmt = conect.createStatement(ResultSet.TYPE_SCROLL_SENSITIVE, ResultSet.CONCUR_READ_ONLY);
try
{
String SQL = "select DescTipoMaterial from TipoMaterial";
ResultSet rs = stmt.executeQuery(SQL);
Vector valores = new Vector();
// pegando os valores do db
while(rs.next())
{
valores.addElement(rs.getString("DescTipoMaterial"));
}
//adicionando os valores no JComboBox
for(int i = 0; i<valores.size();i++)
{
insereTipoMaterial.addItem(valores.get(i));
}
}
catch(SQLException ex) //linha 280
{}
//atualizaCampos();
//linha 116
try
{
String SQL = "select DescPredio from Predio";
ResultSet rs = stmt.executeQuery(SQL);
Vector dados = new Vector();
// pegando os valores do db
while(rs.next())
{
dados.addElement(rs.getString("DescPredio"));
}
//adicionando os valores no JComboBox
for(int i = 0; i<dados.size();i++)
{
inserePredioMaterial.addItem(dados.get(i));
}
}
catch(SQLException ex) //linha 280
{}
}//fecha o maior try
catch(ClassNotFoundException ex)
{
System.out.println("Driver JDBC não encontrado");
}
catch(SQLException ex)
{
System.out.println("Problemas na conexão com a fonte de dados");
}
}//fecha construtor
public void actionPerformed(ActionEvent e)
{
if(e.getSource()==bNovo)
{
limpaCampos();
return;
}
//-----------Inicio da gravação-----------
if(e.getSource()==bGravar)
{
try
{
String SQL="INSERT INTO Material(NomeMaterial) Values('" +
insereCodigoMaterial.getText()+"')";
stmt.executeUpdate(SQL);
JOptionPane.showMessageDialog(null,"Gravação Realizada com Sucesso");
limpaCampos();
}
catch(SQLException ex)
{
if(ex.getMessage().equals("General Error" ))
JOptionPane.showMessageDialog(null,"Dado Inválido");
else
JOptionPane.showMessageDialog(null, "Material já cadastrado");
}
}
//---------Fim da Gravação------------
//----------Inicio da Alteração-------
if(e.getSource()==bAlterar)
{
try
{
String SQL = "UPDATE Material SET " +
"NomeMaterial = '" + insereCodigoMaterial.getText() + "'," +
"WHERE NomeMaterial = '" +insereCodigoMaterial.getText() + "'";
int r=stmt.executeUpdate(SQL);
if(r==1)
JOptionPane.showMessageDialog(null, "Alteração realizada com sucesso" );
else
JOptionPane.showMessageDialog(null, "O material ainda não está cadastrado\n Pressione GRAVAR");
}
catch(SQLException ex)
{}
}
//----------Fim da Alteração----------
//----------Início da Exclusão--------
if(e.getSource()==bExcluir) //linha 200
{
try
{
String SQL = "SELECT NomeMaterial FROM Material WHERE NomeMaterial='"
+ insereCodigoMaterial.getText() + " ' ";
rs=stmt.executeQuery(SQL);
String del = "";
try
{
rs.next();
del="Apagar o Material: " + rs.getString("NomeMaterial");
}
catch(SQLException ex1)
{
JOptionPane.showMessageDialog(null,"Material não cadastrado");
return;
}
int n = JOptionPane.showConfirmDialog(null, del, "",JOptionPane.YES_NO_OPTION);
if (n == JOptionPane.YES_OPTION)
{
SQL="DELETE FROM Material WHERE NomeMaterial='"
+insereCodigoMaterial.getText() + "'";
int r = stmt.executeUpdate(SQL);
if(r==1)
JOptionPane.showMessageDialog(null,"Exclusão realizada com sucesso");
else
JOptionPane.showMessageDialog(null,"Não foi possível excluir");
}
else
return;
}
catch(SQLException ex)
{}
limpaCampos();
}
//----------Fim da Exclusão----------- //linha 240
} //fecha o action performed
public void limpaCampos()
{
insereCodigoMaterial.setText("");
}
}