GUJ Discussões   :   últimos tópicos   |   categorias   |   GUJ Respostas

Botão pesquisar em jTable

netbeans
Tags: #<Tag:0x00007f6537b078d8>
#1

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?

0 Likes

#2

Implementa um método no teu table model para isso.

0 Likes

#3

Qual? Existe algum método especifico pra este caso?

0 Likes

#4

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.

0 Likes

#5

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.

0 Likes