na minha combo esta retornando os nomes do funcionario… porem quando clico na combo preciso que o jlabel recebe o ID de cada nome que esta no banco.
vejam o código e o erro:
[code] private void jComboBox1ActionPerformed(java.awt.event.ActionEvent evt) {
if(jComboBox1.getSelectedIndex() >=0){
Funcionario funci = (Funcionario) jComboBox1.getSelectedItem();
jTextField1.setText(String.valueOf(funci.getID()));}[/code]
java.lang.ClassCastException: java.lang.String cannot be cast to MODELO.Funcionario
como vc ta montando o jComboBox??
assim:
jComboBox1.addItem(funcionario);
???
tenho meu metodo de consulta e aki eu monto a combo no jframe
[code]public Registrar_Orcamento() {
initComponents();
IFachada fachada = new Fachada();
try{
Funcionario funcionario = new Funcionario();
List<Funcionario> listfunc = fachada.ComboFuncionario(funcionario);
jComboBox1.removeAllItems();
for(Funcionario listafunc:listfunc){
jComboBox1.addItem(listafunc.getNome());
}}catch(Exception e){
e.printStackTrace();
JOptionPane.showMessageDialog(null,e.getMessage());
}
[/code]
Você ta adicionando um String… como quer ler uma classe Funcionario?
funcionario extende pessoa e que extend domainobject que possue um ID
[code]public class Funcionario extends Pessoa implements Serializable {
private Cargos Cargos;
/**
* @return the Cargos
*/
public Funcionario(){}
public Cargos getCargos() {
return Cargos;
}
/**
* @param Cargos the Cargos to set
*/
public void setCargos(Cargos Cargos) {
this.Cargos = Cargos;
}
public String toString() {
return getNome();
}
}
public class Pessoa extends DomainObject {
private Integer CPF;
private String Nome;
private Integer Telefone;
private Endereco Endereco;
public class DomainObject {
private Integer ID;
/**
* @return the ID
*/
public Integer getID() {
return ID;
}
/**
* @param ID the ID to set
*/
public void setID(Integer ID) {
this.ID = ID;
}
}
[/code]
muda de:
jComboBox1.addItem(listafunc.getNome());
para:
jComboBox1.addItem(listafunc);
deve resolver seu problema…
já q vc já fez o toString()…
caraca mano… funfou a pegada hehe
vlw msm era so isso!