Como faço para quando eu digitar no jTextField ele filtrar a tabela comparando o conteúdo da coluna “nome” da tabela com o conteúdo digitado no jTextField?
Implementa um método no teu table model para isso.
Qual? Existe algum método especifico pra este caso?
Você cria, cara.
Eu criaria um método que recebe uma String e verifica em todas as colunas se existe aquele valor. Não existindo, remove da lista de dados a serem exibidos, existindo, mantém.
Eu faço um jComboBox e coloco o nome da coluna que quero pesquisar. Ae depois faço um switch colocando cada case com a palavra do Filtro que foi escrito no jComboBox.
Exemplo:
DefaultTableModel modelo = (DefaultTableModel) this.jtbConsulta.getModel();
final TableRowSorter<TableModel> classificador = new TableRowSorter<>(modelo);
jtbConsulta.setRowSorter(classificador);
String texto = jtfPesquisar.getText();
String filtro = (String.valueOf(jcbFiltro.getSelectedItem()));
switch (filtro) {
case "Código":
classificador.setRowFilter(RowFilter.regexFilter(texto, 0));
break;
case "Nome":
classificador.setRowFilter(RowFilter.regexFilter(texto, 1));
break;
case "Data":
classificador.setRowFilter(RowFilter.regexFilter(texto, 2));
break;
default:
classificador.setRowFilter(RowFilter.regexFilter(texto, 1));
}
Tudo que for escrito no jTextField ( no meu caso jtfPesquisar - texto ), vai fazer exatamente o que o Darlan disse.