我成功从数据库中获取数据值。我还将它们存储到String[]
数组中。我需要加载String数组作为JComboBox
的项目以响应执行的关键操作。每当按下一个键时,如何重新加载JComboBox
的项目,因为获取的值取决于按下的键。相反,我需要动态刷新JComboBox
项目。
答案 0 :(得分:36)
DefaultComboBoxModel model = new DefaultComboBoxModel( yourStringArray );
comboBox.setModel( model );
答案 1 :(得分:6)
你有几个选择。您可以使用removeAllItems()
(或其他删除方法之一)和addItem(Object anObject)
来操作可选对象。或者您可以实现ComboBoxModel
并允许它从您的阵列中提供数据。
答案 2 :(得分:6)
这是用于说明默认组合框模型的演示
public class ComboPanel extends JPanel {
JComboBox jcbo;
// this is constructor
public ComboPanel(ArrayList<String> items) {
jcbo = new JComboBox();
// getting exiting combo box model
DefaultComboBoxModel model = (DefaultComboBoxModel) jcbo.getModel();
// removing old data
model.removeAllElements();
for (String item : items) {
model.addElement(item);
}
// setting model with new data
jcbo.setModel(model);
// adding combobox to panel
this.add(jcbo);
}
}
我希望这对小事有所帮助:)。
答案 3 :(得分:-1)
它也适用于没有DefaultComboBoxModel ...
JComboBox op=new JComboBox(new String[] {"d","e","f"});
op.removeAllItems();
String[] new_entries=new String[] {"a","b","c"}
for (String s : new_entries) {
op.insertItemAt(s, op.getItemCount());
}
op.setSelectedIndex(0);
猜猜你会看到哪些值......