Tenho uma tela onde consulto dados do curso de uma tabela do Banco de dados e na tela tenho um comboBox que o usuário seleciona qual curso ele quer consultar e na ação dele clicar no item do comboBox aparece os dados do curso, isso está funcionando, mas quando ele selecionar o item null do comboBox os dados tem que ser limpos, mas não tá limpando. Segue o código do comboBox.
if(cbCurso.getSelectedItem()!=null) {
String selecao = (String) (cbCurso.getSelectedItem());
tfNome.setText(selecao);
ResultSet res1 = inserir.executarBusca("select CursoSigla from curso where CursoNome = '"+selecao+"'");
ResultSet res2 = inserir.executarBusca("select CursoNivel from curso where CursoNome = '"+selecao+"'");
ResultSet res3 = inserir.executarBusca("select CursoTurno from curso where CursoNome = '"+selecao+"'");
try {
while(res1.next()) {
tfSigla.setText(res1.getString("CursoSigla"));
}
while(res2.next()) {
curso.setNivel(res2.getString("CursoNivel"));
if (res2.getString("CursoNivel").charAt(0) == 'S') {
tfNivel.setText("Subsequente");
}else if (res2.getString("CursoNivel").charAt(0) == 'G') {
tfNivel.setText("Graduação");
}
}
while(res3.next()) {
if(res3.getString("CursoTurno").charAt(0)=='M'){
tfTurno.setText("Manhã");
}else if(res3.getString("CursoTurno").charAt(0)=='T') {
tfTurno.setText("Tarde");
}else if(res3.getString("CursoTurno").charAt(0)=='N') {
tfTurno.setText("Noite");
}
}
} catch (Exception e1) {
e1.printStackTrace();
}finally {
if(cbCurso.getSelectedItem()==null) {
tfNome.setText(null);
tfSigla.setText(null);
tfNivel.setText(null);
tfTurno.setText(null);
}
}
}
OBS: O unico componente que está sendo limpo é o tfNome, e como ele é o unico que não recebe do ResultSet então deduzi que o problema é limpar ele.
Estou usando o eclipse e o postgreSQL