Boa noite galera, gostaria de saber como pegar o valor exato de um campo do jtable, e comparar com um campo em 1 combobox...
ex:
Tenho uma ArrayList com um objeto referente aos dados do meu projeto como: codigo, descricao, edital, codigo da instituição, codigo do laboratorio, codigo do coordenador, codigo de aluno responsável. Utizo esse ArrayList para popular um jtable até aí tudo bem segue o código
private void preencheTabela() {
ProjetoDAO dao = new ProjetoDAO();
listaProj = dao.getLista();
DefaultTableModel modelo = (DefaultTableModel) table_projeto.getModel();
modelo.setNumRows(0);
//Adicionando os dados na Tebela
for (ProjetoBean bean : listaProj) {
modelo.addRow(new Object[]{bean.getCodigo(), bean.getProjetoDesc(), bean.getEdital()});
lastId = bean.getCodigo();
}
//Adicionado o lasId baseado no ultimo dado recebido
if (listaProj.size() <= 0) {
lastId = 0;
}
}
Nesta mesmo tela tenho 4 combobox, um para o codigo da instituição, codigo do laboratório, codigo da usuário coordenador, código do usuário responsavel...
cada cb tem um ArrayList que recebe todos os valores de uma consulta no bd.... Beleza até aí, todas as combobox estão sendo preenchidas direitinho....
for (int i = 0; i < listProjInst.size(); i++) {
cb_inst.addItem(listProjInst.get(i).getSigla());
}
for (int i = 0; i < listProjLab.size(); i++) {
cb_lab.addItem(listProjLab.get(i).getSigla());
}
for (int i = 0; i < listProjUsrCoord.size(); i++) {
cb_coord.addItem(listProjUsrCoord.get(i).getNome());
}
for (int i = 0; i < listProjUsrResp.size(); i++) {
cb_alunoResp.addItem(listProjUsrResp.get(i).getNome());
}
Então nesta tela disponibilizo uma opção para o usuário ao clicar em um dos row do jtable, que ele possa alterar esses valores, aonde quando ele selecionar um row, irá preencher todos os textfield com os valores, e setar o combobox para o valor correspondente ao row selecionado, por exemplo:
Se eu seleciono uma linha que tem o Igor como coordenador, o Yuri como responsavel, o cb_coord.setSelectedIndex(); tem que corresponder ao codigo do coordenador da row selecionado. Esta implementado da seguinte forma:
cb_coord.setSelectedIndex(listaProj.get(table_projeto.getSelectedRow()).getProjetoCord());
Exception in thread "AWT-EventQueue-0" java.lang.IllegalArgumentException: setSelectedIndex: 2 out of bounds
Só que não estou conseguindo fazer essa comparação pois o valor que é passado do getProjetoCord nem sempre será igual ao indice que armazeno o coordenador com o código correspondente!
Alguem pode me ajudar?
