Bom dia Srs.
Estou fazendo as tradicionais ComboBox dependente Estado/Cidade. No Swing há o evento intemChange que eu posso criar na cb e disparar a consulta no BD toda vez que alterar o estado para suas respectivas cidades. no JavaFX eu realmente estou com dificuldades.
- Tanto o estado como a cidade estarão vindo de tabelas diferentes no BD.
- Gostaria de uma solução não estruturada e sim OO.
Quanto à query, ok! minha dificuldade é disparar o evento de forma correta ao mudar a cb estado. Eu realmente pesquisei bastante e vi diversas soluções, mas nenhuma que apresentasse dados vindos do BD sem ser no Swing. Se alguém tiver um tuto explicativo ou se já fez e puder postar o código e ou passar o link. Agradeço!
Esse é meu objeto de consulta.
public List<ModelCidade>listarComboBoxCidade(){
List<ModelCidade> lista = new ArrayList<>();
ModelCidade mod = new ModelCidade();
String sql = "SELECT cidade_nome FROM tbl_geral_cidade WHERE fk_estado = '"+mod.getLista()+'";
try{
con.conectar();
con.executaSQL(sql);
while(con.resultSet.next()){
mod.setCidade(con.resultSet.getString("cidade_nome"));
lista.add(mod);
}
con.desconectar();
}catch(SQLException e){
con.desconectar();
JOptionPane.showConfirmDialog(null, "Erro :" + e);
return null;
}
return lista;
}
O para o parâmetro de comparação WHERE eu criei um objeto getLista() no Model. Imaginando que posso setar no setLista o valor da ComboBox estado.
Não sei se estou fazendo errado… Se puderem dar uma luz!