Pessoal estou fazendo uma aplicação desktop no netbeans e usando o mysql como banco de dados e tenho uma dúvida.Eu tenho uma tela de consulta com 2 jcombo onde um tem o curso e o outro o turno.Gostaria de preencher uma jtable de acordo com as jcombo ou seja caso eu escolha um curso e um turno na jtable apareca os campos os quais escolhi na tabela.Eu sei que com jtexfield se usa like mas com jcombo não to conseguindo.
Modelo Tabela
import javax.swing.table.AbstractTableModel;
import java.util.*;
public class ModeloTabela extends AbstractTableModel{
private ArrayList linhas = null;
private String[] colunas = null;
public ModeloTabela(ArrayList lin, String[] col){
setLinhas(lin);
setColunas(col);
}
public int getColumnCount(){
return getColunas().length;
}
public int getRowCount(){
return getLinhas().size();
}
public String getColumnName(int numCol){
return getColunas()[numCol];
}
public Object getValueAt(int numLin,int numCol){
Object[] linha = (Object[])getLinhas().get(numLin);
return linha[numCol];
}
/**
* @return the linhas
*/
public ArrayList getLinhas() {
return linhas;
}
/**
* @param linhas the linhas to set
*/
public void setLinhas(ArrayList linhas) {
this.linhas = linhas;
}
/**
* @return the colunas
*/
public String[] getColunas() {
return colunas;
}
/**
* @param colunas the colunas to set
*/
public void setColunas(String[] colunas) {
this.colunas = colunas;
}
}
Método para Preencher a tabela
public void preencherTabelaConsulta(String sql){
ArrayList dados = new ArrayList();
String [] colunas = new String[]{"ID","NOME DO ALUNO","CPF","WATSAPP","CELULAR","CURSO","TURNO","DIA DA INSCRIÇÃO","HORA DA INSCRIÇÃO"};
c.getConnection();
c.executaSql(sql);
try {
c.rs.first();
do{
dados.add(new Object[]{c.rs.getInt("idAluno"),
c.rs.getString("nome"),c.rs.getString("cpf"),
c.rs.getInt("zap"),c.rs.getString("cel"),c.rs.getString("curso"),c.rs.getString("turno"),
c.rs.getString("dataInscricao"),c.rs.getString("horaInscricao")});
}while(c.rs.next());
} catch (SQLException ex) {
Logger.getLogger(Pagamento.class.getName()).log(Level.SEVERE, null, ex);
}
ModeloTabela modelo = new ModeloTabela(dados, colunas);
jTableConsulta.setModel(modelo);
jTableConsulta.getColumnModel().getColumn(0).setPreferredWidth(23);
jTableConsulta.getColumnModel().getColumn(0).setResizable(true);
jTableConsulta.getColumnModel().getColumn(1).setPreferredWidth(120);
jTableConsulta.getColumnModel().getColumn(1).setResizable(true);
jTableConsulta.getColumnModel().getColumn(2).setPreferredWidth(100);
jTableConsulta.getColumnModel().getColumn(2).setResizable(true);
jTableConsulta.getColumnModel().getColumn(3).setPreferredWidth(80);
jTableConsulta.getColumnModel().getColumn(3).setResizable(true);
jTableConsulta.getColumnModel().getColumn(4).setPreferredWidth(150);
jTableConsulta.getColumnModel().getColumn(4).setResizable(true);
jTableConsulta.getTableHeader().setReorderingAllowed(false);
jTableConsulta.setAutoResizeMode(jTableConsulta.AUTO_RESIZE_OFF);
jTableConsulta.setSelectionMode(ListSelectionModel.SINGLE_SELECTION);
}
Ação dentro do botão consultar
private void jButtonConsultarActionPerformed(java.awt.event.ActionEvent evt) {
consulta.setConsultaCurso((String)jComboBoxConsultaCurso.getSelectedItem());
preencherTabelaConsulta("select idAluno from cadastroaluno where curso=? ");
//consulta.setConsultaCurso((String)jComboBoxConsultaCurso.getSelectedItem());
}
**Não sei se estou fazendo certo Gostaria de uma ajuda**