Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/database/9.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java ComboBox数据库值不为';添加新数据后不刷新_Java_Database_Swing_Refresh_Jcombobox - Fatal编程技术网

Java ComboBox数据库值不为';添加新数据后不刷新

Java ComboBox数据库值不为';添加新数据后不刷新,java,database,swing,refresh,jcombobox,Java,Database,Swing,Refresh,Jcombobox,在将数据添加到数据库中之后,除非我再次执行该程序,否则不会对JComboBox进行任何更改。我需要调用任何特定的方法来刷新值吗?谢谢 新代码: class ComboModel extends AbstractListModel implements ComboBoxModel { // array? treeset? public Object getElementAt(int index) { } public int getSize() {

在将数据添加到数据库中之后,除非我再次执行该程序,否则不会对JComboBox进行任何更改。我需要调用任何特定的方法来刷新值吗?谢谢

新代码:

 class ComboModel extends AbstractListModel implements ComboBoxModel 
 {
    // array? treeset? 

    public Object getElementAt(int index) {

    }

    public int getSize() {

    }

    public Object getSelectedItem() {

    }

    public void setSelectedItem(Object anItem) {

    }
}

final JComboBox stockListComboBox = new JComboBox();
ComboModel model = new ComboModel();
stockListComboBox.setModel(model);          

try
{
    // Database Stuffs
}

catch(Exception e)
{
    e.printStackTrace();
}

不确定我是否得到了问题的第二部分,但是,关于添加到DefaultComboxModel的值,您必须调用一个方法,让combobox知道模型元素已更改。
您可以使用method或fireIntervalAdded one。

您是否在询问为什么在单击addButton后插入数据库的值没有显示在各自的JTextField中?
捕获(异常e){}
不要忽略异常!将其更改为
catch(异常e){e.printStackTrace();}
@eabraham,单击addButton后,该值将插入数据库,但不会插入JComboBox(除非我再次执行该程序)。@AndrewThompson,感谢您的提示!请删除
您可以使用fireContentsChanged fireContentsChanged方法或fireIntervalAdded方法。
,然后+1 Andrea Parodi,我已经更新了代码,这是正确的方法吗?我见过声明变量的例子。有些是数组或树集。我应该申报什么?Thanks@mKorbel,我应该声明什么类型的变量?谢谢