Boa noite srs. Estou com dificuldade para popular meu combobox usando JAVAFX com dados vindo do Banco de Dados.
- Conexao está ok;
- Consulta está ok, pois consigo popular as TextFields com os dados;
Segue meus códigos, quem puder me ajudar agradeço.
public ModeloCadastroEmpresa getClienteDAO(int index) {
ModeloEmpresaGrupo modEmpresa;
ModeloEndereco modEndereco;
ModeloLogradouro modLogradouro;
ModeloDocumentoPJ modDocumento;
ModeloCadastroEmpresa modCadastroEmpresa = new ModeloCadastroEmpresa();
String sql = "SELECT "
+"tbl_adm_empresa.indexador , "
+"tbl_adm_empresa.data_cadastro , "
+"tbl_adm_empresa.status , "
+"tbl_adm_empresa.razao_social , "
+"tbl_adm_empresa.nome_fantasia , "
+"tbl_adm_empresa.tipo_pf , "
+"tbl_adm_empresa.tipo_pj , "
+"tbl_adm_empresa.fk_documento , "
+"tbl_adm_empresa.fk_endereco , "
+"tbl_endereco.id_endereco , "
+"tbl_endereco.fk_logradouro , "
+"tbl_endereco.endereco , "
+"tbl_endereco.numero , "
+"tbl_endereco.complemento , "
+"tbl_endereco.bairro , "
+"tbl_endereco.cep "
+"FROM tbl_adm_empresa "
+"INNER JOIN tbl_endereco ON id_endereco = tbl_adm_empresa.fk_endereco "
+"WHERE indexador = '"+index+"' ";
try {
con.conectar();
con.executaSQL(sql);
while(con.resultSet.next()){
DAOlogradouro daoLogradouro = new DAOlogradouro();
modEmpresa = new ModeloEmpresaGrupo();
modEndereco = new ModeloEndereco();
modLogradouro = new ModeloLogradouro();
modEmpresa.setIndexador(con.resultSet.getInt("indexador"));
modEmpresa.setDataCadastro(con.resultSet.getString("data_cadastro"));
modEmpresa.setStatus(con.resultSet.getString("status"));
modEmpresa.setRazaoSocial(con.resultSet.getString("razao_social"));
modEmpresa.setNomeFantasia(con.resultSet.getString("nome_fantasia"));
modEmpresa.setTipoPF(con.resultSet.getBoolean("tipo_pf"));
modEmpresa.setTipoPJ(con.resultSet.getBoolean("tipo_pj"));
modEmpresa.setFk_documento(con.resultSet.getString("fk_documento"));
modEmpresa.setFk_endereco(con.resultSet.getString("fk_endereco"));
//========================================================
//Aqui é a informação a carregar na Combo
//A consulta é realizada com sucesso, pois já imprimi e o resultado é o que eu quero
modLogradouro.setIndexador(con.resultSet.getInt("fk_logradouro"));
daoLogradouro.getLogradouroString(modLogradouro.getIndexador());
modEndereco.setFkLogradouro(modLogradouro);
//=========================================================
modEndereco.setEndereco(con.resultSet.getString("endereco"));
modEndereco.setNumero(con.resultSet.getString("numero"));
modEndereco.setComplemento(con.resultSet.getString("complemento"));
modEndereco.setBairro(con.resultSet.getString("bairro"));
modEndereco.setCep(con.resultSet.getString("cep"));
modCadastroEmpresa.setModeloEmpresaGrupo(modEmpresa);
modCadastroEmpresa.setModeloEndereco(modEndereco);
}
} catch (SQLException e) {
JOptionPane.showMessageDialog(null , e);
}
return modCadastroEmpresa;
}
Esse é o meu controller que passa um evento de Mouse pra click na Tabela, quando a tabela é clicada ele dispara a consulta no Banco de Dados e carrega os dados nos textfields…
@FXML
private void carregarDadosTabela(MouseEvent event) {
int linha = tblEmpresaGrupo.getSelectionModel().getSelectedItem().getIndexador();
ModeloCadastroEmpresa mod = new ModeloCadastroEmpresa();
mod = daoEmpresa.getClienteDAO(linha);
txtIndexador.setText(String.valueOf(mod.getModeloEmpresaGrupo().getIndexador()));
txtDataCadastro.setText(mod.getModeloEmpresaGrupo().getDataCadastro());
txtStatus.setText(mod.getModeloEmpresaGrupo().getStatus());
txtRazaoSocial.setText(mod.getModeloEmpresaGrupo().getRazaoSocial());
txtNomeFantasia.setText(mod.getModeloEmpresaGrupo().getNomeFantasia());
txtEndereco.setText(mod.getModeloEndereco().getEndereco());
txtNumero.setText(mod.getModeloEndereco().getNumero());
txtComplemento.setText(mod.getModeloEndereco().getComplemento());
txtBairro.setText(mod.getModeloEndereco().getBairro());
txtCep.setText(mod.getModeloEndereco().getCep());
//Acima todos os campos estão sendo carregados corretamente, sem problemas.
//A combobox é CBLOGRADOURO abaixo:
//cbLogradouro...
}
Já tentei todos os métodos disponíveis de todas as formas possíveis. rsrs… Obviamente eu não tentei o forma correta! Se alguém puder ajudar! Agradecerei mto mto mto
… Ta dificil!!! Pelo menos para mim!