Lista que pesquisa automaticamente

estou fazendo um programa simples pra empresa e gostaria de umas dicas para mim fzer algo parecido com essa imagem que busque num txt e mostre os resultados automaticamente
http://img72.imageshack.us/my.php?image=imagemqs3.jpg

Cara, não sei se é o jeito mais eficiente, devem haver outros, mas no evento do key pressed do txtField, faça a sua consulta…
Eu fiz um sistema deste modo… às vezes “lega” um pouco porque minha consulta é feita no banco de dados…
Se não for muitos dados para serem exibidos, o ideal é vc ler TODOS os dados do bd e fazer a busca em uma lista de strings mesmo, usando o método contains.

Boa sorte, abraços

[quote=arec_metafora]Cara, não sei se é o jeito mais eficiente, devem haver outros, mas no evento do key pressed do txtField, faça a sua consulta…
Eu fiz um sistema deste modo… às vezes “lega” um pouco porque minha consulta é feita no banco de dados…
Se não for muitos dados para serem exibidos, o ideal é vc ler TODOS os dados do bd e fazer a busca em uma lista de strings mesmo, usando o método contains.

Boa sorte, abraços[/quote]

Para evitar o ‘lag’ (ou melhor, transferí-lo) eu aconselho a fazer a busca e trazer para um objeto qualquer temporário no momento que a tela onde há o campo é exibida.

Mas de qqr maneira, se a busca é meio dinâmica, você vai fazer por evento mesmo.

Mas a idéia do arec_metafora é boa.

O sistema é desktop ou é web?

Eu tenho um sistema que tem isso mas em tabelas de resultados (Voce pode fazer apenas com uma coluna e ficaria igual), eu adiciona um RowSorter na tabela e tenho um campo JTextField para pesquisar e a cada vez que algo é digitado ele adiciona um RowFilter ao RowSorter.
E funciona muito bem.

Aqui está um exemplo que eu fiz para mostrar como funciona.

O código para criar essa tela foi esse:

                                FieldResolver<Pessoa> nome = new FieldResolver<Pessoa>(Pessoa.class,
				"nome", "Nome:");
		FieldResolver<Pessoa> idade = new FieldResolver<Pessoa>(Pessoa.class,
				"idade", "Idade:");

		SelectTable<Pessoa> table = new SelectTable<Pessoa>(
				new FieldResolver[] { nome, idade }, data, true, true);
		table.addObjectSelectListener(this);
		table.showSelectTable();

Fora o código da classe Pessoa e um método para preencher os dados de uma lista ( o parametro ‘data’ do construtor da SelectTable)

No jar está só o executavel, essas classes eu guardo em um projeto separado, já que uso em vários outros projetos.

Quem quiser depois é só pedir.

agradeço a ajuda mas não sei como posso utilizar aqui os conselhos de vcs hehe. é que sou iniciante

Mark_Ameba gostei de sua tabela
se puder me passar as classes eu agradeço muito

Postei o novo Jar em outro tópico:
http://www.guj.com.br/posts/list/106720.java#578259

Desculpa… eu estou meio sem tempo então vou postar os fontes outra hora… mas voce pode usar desse jar

E o basico pra usar:

                                FieldResolver<Pessoa> nome = new FieldResolver<Pessoa>(Pessoa.class,
				"nome", "Nome:");
		FieldResolver<Pessoa> idade = new FieldResolver<Pessoa>(Pessoa.class,
				"idade", "Idade:");

		SelectTable<Pessoa> table = new SelectTable<Pessoa>(
				new FieldResolver[] { nome, idade }, data, true, true);
		table.addObjectSelectListener(new ObjectSelectListener(){
                                @Override
	                public void notifyObjectSelected(SelectEvent e) {
		Pessoa selected = (Pessoa) e.getObject();
		JOptionPane.showMessageDialog(null, "A pessoa selecionada foi: "
				+ selected.getNome() + " e ela tem " + selected.getIdade()
				+ " anos.");
	                }
                                }
                                );
		table.showSelectTable();

Fora importar todos os pacotes corretos… e pelo fato do package se chamar mark.util, isso foi falta de criatividade mesmo.