Fala galera!
Pesquisei no google e aqui no Guj, mas não encontrei uma solução para o problema abaixo:
É o seguinte… adicionei um JComboBox e apliquei a ele o AutoComplete do swingx apenas com a linha AutoCompleteDecorator.decorate(meuCombo), ele funciona perfeitamente, mas eu não consigo utilizar nenhum evento, como clique ou ActionPerformed ou qualquer outro, já tentei todas as formas mas não obtive sucesso. Então resolvi pedir ajuda aos brothers do GUJ.
Desde de já agradeço pela atenção de todos.
Abc
Alguém já passou por esse problema?
Abç
Por que ao invés de ficar upando o tópico, vc não posta o seu código?
Isso não é normal.
Dê uma olhada também nesse tópico: http://www.guj.com.br/posts/list/100120.java
Amigo, desculpe responder somente agora!
Se ainda puder ajudar…
Não consegui solucionar o meu problema com o link que vc me passou, mesmo assim agradeço.
Bom, segue abaixo os trechos do meu código, estou usando netbeans:
public class TelaFuncionario extends javax.swing.JInternalFrame {
public TelaFuncionario() {
initComponents();
comboCategoryModel = new DefaultComboBoxModel();
AutoCompleteDecorator.decorate(jComboBoxCargo);
preencherComboCargo();
}
Obs.: adicionei no construtor o AutoCompleteDecorator e também a chamada do método que carrega os dados do bco no combo.
private void jComboBoxCargoFocusLost(java.awt.event.FocusEvent evt) {
JOptionPane.showMessageDialog(null,"TESTANDO O EVENTO PERDER FOCO NO JCOMBOBOX","INFORMAÇÃO", JOptionPane.INFORMATION_MESSAGE);
}
Obs.: Ao perder o foco, o evento acima deveria ser disparado, porém ele só funciona se eu remover o AutoCompleteDecorator do código. Quando uso o AutoCompleteDecorator, seja no construtor ou em outro local nada acontece.
public void preencherComboCargo() {
comboCategoryModel.removeAllElements();
Collection<Funcao> funcao;
try{
funcao = (Collection<Funcao>) TelaLogin.dBServices.obterListaFuncaoCombo();
Iterator<Funcao> it = funcao.iterator();
comboCategoryModel.addElement("SELECIONE...");
jComboBoxCargo.setModel(comboCategoryModel);
while(it.hasNext()){
Funcao funcoes = (Funcao) it.next();
comboCategoryModel.addElement(funcoes);
jComboBoxCargo.setModel(comboCategoryModel);
jComboBoxCargo.updateUI();
}
}catch(DefaultException fex){
JDialog.setDefaultLookAndFeelDecorated(true);
JOptionPane.showMessageDialog(null, fex.toString(), "Atencao", JOptionPane.ERROR_MESSAGE);
}catch(SQLException sqlex){
JDialog.setDefaultLookAndFeelDecorated(true);
JOptionPane.showMessageDialog(null, sqlex.toString(), "Atencao", JOptionPane.ERROR_MESSAGE);
}catch(ClassNotFoundException e){
JDialog.setDefaultLookAndFeelDecorated(true);
JOptionPane.showMessageDialog(null, e.toString(), "Atencao", JOptionPane.ERROR_MESSAGE);
}
}
Obs.: Esse é o código que carrega minha combo.