Java AbstractListModel中刷新JComboBox的方法?
JComboBox从数据库中检索信息。添加数据后,列表应立即更新 我知道我需要Java AbstractListModel中刷新JComboBox的方法?,java,swing,jcombobox,Java,Swing,Jcombobox,JComboBox从数据库中检索信息。添加数据后,列表应立即更新 我知道我需要FireContents更改为要更新的值。我不确定我应该在方法上做些什么。任何指导都将不胜感激 class ComboModel extends AbstractListModel implements ComboBoxModel { ArrayList list = new ArrayList(); @Override public Object getElementAt(int arg0
FireContents更改为要更新的值。我不确定我应该在方法上做些什么。任何指导都将不胜感激
class ComboModel extends AbstractListModel implements ComboBoxModel
{
ArrayList list = new ArrayList();
@Override
public Object getElementAt(int arg0) {
return null;
}
@Override
public int getSize() {
return list.size();
}
@Override
public Object getSelectedItem() {
}
@Override
public void setSelectedItem(Object arg0) {
}
}
stockListComboBox = new JComboBox();
ComboModel model = new ComboModel();
stockListComboBox.setModel(model);
try
{
// Database stuffs
}
catch(Exception e)
{
e.printStackTrace();
}
您需要提供一些集合作为模型的核心,比如ArrayList或其他类型的有序列表。这样做,方法就会开始有意义。如前所述,您需要提供数据。组合框最简单的方法是使用DefaultComboxModel,它在其构造函数中接受对象[]。一般来说,上面的前两种方法是1)获取列表中的元素,2)返回列表的大小
接下来的两个用于跟踪列表中选择的项目。我建议看一下javadocs。此外,如果您使用的是eclipse、netbeans或intellij,您应该能够非常轻松地查看DefaultComboxModel的源代码,并且这些方法的作用应该显而易见。Matt,感谢您的解释。我需要使用所有的方法吗?我只需要从我的数据库中检索数据。装满鳗鱼的气垫船,谢谢你的解释。我需要使用所有的方法吗?我一直在看几个例子,但我还是迷路了。我不确定我应该在这些方法中添加什么。你需要覆盖抽象方法,这些方法是必需的。试一试,你很可能会发现,或者至少会接近它。