Pesquisa em jtable e opinião sobre "atualizar" [resolvido]

7 respostas
d34d_d3v1l

gente,

fiz uma pesquisa aqui que ao digitar “C” por exemplo ele vai e “ordena” a tabela de acordo com o que vc pesquisou…
Só que alem disso, eu queria que ele selecionasse todas as linhas que começam com esse “C” como que faz?

Aproveitando o tópico eu gostaria de uma opinião de vocês…
É interessante o usuario “Atualizar” os dados cadastrais de um produto (por exemplo) direto
da Jtable? Por que eu fiz assim:

7 Respostas

RobsonFagundes

fiz algo assim …

no Evento KeyReleased do meu JTextField
chamo o metodo:

/**
     * Filtra os registros exibidos na tabela.
     */
    public void filtrarNomeNaTabela() {
        try {
            if (dtmAtividades.getRowCount() > 0) {
                sorter.setRowFilter(RowFilter.regexFilter("(?i)" + jtfNome.getText()));
            }
        } catch (Exception ex) {
            new ExibirExcessao(null, true, ex).setVisible(true);
        }
    }

lembrando que dtmAtividades
é o meu : private DefaultTableModel dtmAtividades = new DefaultTableModel();

espero q te ajude t+

d34d_d3v1l

sera que funciona sem usar o defaultTableModel?

abraços

d34d_d3v1l

o que seria o sorter ?

Marky.Vasconcelos

d34d_d3v1l:
sera que funciona sem usar o defaultTableModel?

abraços

Com certeza, e fica bem melhor ainda.

Existe um componente pronto que faz o filtro com suporte a wildcards que nem o Excel, é o TableFilter do projeto Towel.

RobsonFagundes

[quote=Marky.Vasconcelos][quote=d34d_d3v1l]sera que funciona sem usar o defaultTableModel?

abraços

Com certeza, e fica bem melhor ainda.

Existe um componente pronto que faz o filtro com suporte a wildcards que nem o Excel, é o TableFilter do projeto Towel.

Puxa vida nao tinha visto isso: Não use DefaultTableModel!!! http://www.guj.com.br/java/149861-recuperar-id-de-jtable/2#813171
vlw pelo tok Marky.Vasconcelos

d34d_d3v1l

aaa…

vou implementar o meu… pronto…depois eu posto aqui o código :wink:

abraços

d34d_d3v1l
public void PesquisaAcompAtividade() {
        String pesquisando = campo_Acomp_Pesq.getText();
        String pesquisado = "";
        int tamanho = pesquisando.length();
        int i;
        int faltaram[] = new int[1000];
        int countFaltaram = 0;

        modeloAcomp.limpar();

        for (i = 0; bd.acomp[i] != null; i++) {

            try {
                pesquisado = bd.acomp[i].getAtividades().substring(0, tamanho);
                if (pesquisando.equals(pesquisado)) {
                    modeloAcomp.addAcompanhamento(bd.acomp[i]);

                } else {
                    faltaram[countFaltaram] = i;
                    countFaltaram++;
                }
            } catch (StringIndexOutOfBoundsException e) {
                faltaram[countFaltaram] = i;
                countFaltaram++;
            }
        }

        for (i = 0; i < countFaltaram; i++) {
            modeloAcomp.addAcompanhamento(bd.acomp[faltaram[i]]);
        }
    }

pronto ta aí ...
só falta botar as duas strings para upper case ...
:D

Criado 9 de fevereiro de 2011
Ultima resposta 9 de fev. de 2011
Respostas 7
Participantes 3