só para os feras...jComboBox dinâmico

12 respostas
D

Estive pensando se algum meio de fazer isso:
se eu digitar…‘ab’ em um combobox editavel…ele vai me listar ‘abc’,‘abelha’,‘abusado’…sendo que esses dados estao no bd…
eu acho que retornar o valor da coluna deve ser assim:

public String[] listaNC(String cliente){ 
String[] nm_cliente=new String[this.nRegID()]; 
try{ 
stmt=conect.getStatement(); 
ResultSet rs= 
stmt.executeQuery("select nm_cliente from sis_cad_clientes where nm_cliente='"+cliente+"%"); 
int i=0; 
while(rs.next()){ 
String nome=rs.getString("nm_cliente"); 
nm_cliente[i++]=nome; 
} 
}catch(SQLException ex){ 
System.out.println(ex); 
} 
return nm_cliente; 
}

onde o parametro nome eh o texto que vc digitou dentro da combo…
agora a acao da combo eh que sao outros 500…alguem pode me ajudar…quem sabe a gente faz uma interface swt bem show com bd e disponibiliza de tutorial no site…

12 Respostas

J

Oi

Diana, ótima idéia… Po, tu sempre ta com uma idéias legais aqui no PJ, :slight_smile:

Bom, mas tu já pensou se o DB for muito grande??? Imagina a demora pra pegar todas as coincidencias…

Outra, quanto tempo vai demorar quando o usuário digitar pra efetuar a busca??? Se for imediato, o desempenho vai por agua abaixo…

Mas, estou aí, se tu tiver afim de implementar, vamos nessa…

T+

D

Já pesei eesas questões e cheguei à conclusão que é viável, e acrescentará um pouco de elegância ao formulário que estou fazendo.

Mas preciso de ajuda para terminar.

Conto com você Paulo!

H

Para tratar o teclado no combo a gente faz mais ou menos isso:

meuCombo.getEditor().getEditorComponent().addKeyListener( new KeyListener(){//ou KeyAdapter //Implementa os métodos necessários } );

J

Oi

Diana, tu já tem alguma coisa em andamento aí??? Algum teste ou protótipo???

Se tiver, pode postar… vamos dar inicio ao teu projeto!!!

T+

D

programacao do combobox:

private javax.swing.JComboBox getJComboBox() {
		if(jComboBox == null) {
			jComboBox = new javax.swing.JComboBox();
			jComboBox.setSize(138, 20);
			jComboBox.setLocation(97, 51);
			jComboBox.setMaximumRowCount(120);
			jComboBox.setEditable(true);
			jComboBox.addActionListener(new java.awt.event.ActionListener() { 
				public void actionPerformed(java.awt.event.ActionEvent e) {    
					PreencheCombo();
				}
			});
			
		}return jComboBox;
	}

metodo para preencher o combo:

public void PreencheCombo(){
		String cliente=(String)jComboBox.getSelectedItem();	
		try{
		stmt=connect.getStatement();
		ResultSet rs=
		stmt.executeQuery("select nm_cliente from sis_cad_clientes where nm_cliente like '"+cliente+"%"+"'");
		int i=0;
		while(rs.next()){
		String nome=rs.getString("nm_cliente");
			jComboBox.addItem(nome);
			System.out.println(nome);
		}
		}catch(SQLException ex){
		System.out.println("aqui"+ex);
		}
	}

ajudem galera!!!

D

me ajudar a decifrar o enigma do combobox dinamico…

H

Não seria mais rápido fazer um select só para pegar todos os registros e a partir daí fazer o filtro.

E para tratar o teclado no combo a gente faz mais ou menos isso:

meuCombo.getEditor().getEditorComponent().addKeyListener( new KeyListener(){//ou KeyAdapter //Implementa os métodos necessários } );

E

Olá Diana, não deu prosseguimento neste seu projeto ??!!

Me interessei muito por ele, mas também não consegui fazer com que uma combo editábel sofresse o evento de um Listener de teclado…

A minha idéia era a mesma que a sua, preencher a combo de acordo com o texto digitado pelo usuário.

Quanto ao desempesnho, isso depende muito da aplicação, como a minha é relativamente pequena, seria válido.

Inclusive, eu já vi isto funcionando em VB.

Abraço.

G

oi
sei q este topco ta meio antigo mas…
tb tava querendo fazer isso … ja tentei varias coisa mas nada deu certo

se alguem ja fez passa para de uma olha

abs

G

bem galera … eu consegui fazer o combobox dinamico
quer tiver afim de saber como fiz e so me dar um alo

abs

L

“gavina”:
bem galera … eu consegui fazer o combobox dinamico
quer tiver afim de saber como fiz e so me dar um alo

abs

Alô

posta aqui pra todo mundo ficar sabendo, aliás é esse o propósito né?

A

eu gostaria de saber como vc fez o seu combobox dinamico obrigada :slight_smile:

Criado 21 de abril de 2004
Ultima resposta 27 de jul. de 2005
Respostas 12
Participantes 7