"vansol":
Olá,
Como é que eu uso o "ComboBoxModel", alguém tem algum exemplo pra enviar.
De preferência usando uma query.
Obrigada. :wink:
Seguinte... :roll:
Implementar o modelo da combobox, significa que vc vai implementar o modo como a combobox vai armazenar deus dados, como ela vai trabalhar e exibir.
Entao, na hora de implementar seu modelo, pense somente em como guardar e o que mostrar na sua combo. Por isso separe o que é guardar e o que é alimentar.
Vou postar um exemplo bem rustico de como extender o modelo ja existente ( pra nao ter mto trabalho nos listeners ) assim, vc somente sobrpoe os métodos utilizados para trabalhar com o conteudo da combo.
import java.util.ArrayList;
/**
*
* @author Bruno
*/
public class MyComboModel extends javax.swing.DefaultComboBoxModel {
private ArrayList lista = null;
private Object itemSelecionado = null;
/** Creates a new instance of MyComboModel */
public MyComboModel() {
super();
}
public Object getElementAt(int index) {
return getLista().get(index);
}
public Object getSelectedItem() {
return itemSelecionado;
}
public int getSize() {
return getLista().size();
}
public void setSelectedItem(Object anItem) {
itemSelecionado = anItem;
}
private ArrayList getLista(){
if( lista == null ){
lista = new ArrayList();
}
return lista;
}
public void addElement(Object anObject){
getLista().add(anObject);
}
}
Essa classe nada mais faz do que guardar os dados da sua combo no vetor: e o item atualmente selecionado num objeto.
Pra usar é só:
JComboBox combo = new JComboBox(new MyComboModel());
Bem, é isso ai. Qqer coisa tamos ai.
Ps: Nao testei !
Abraços.