// Это блок кода для формы JSwing с Jcombobox на нем и имеющий ArrayList, указывающий на comboBox
ArrayList<Chemicals> chemicals;
/**
* Creates new form EditChemical
*/
public EditChemical() {
initComponents();
chemicals = new ArrayList<Chemicals>();
populateArrayList();
String[] chemicalsArray = new String[chemicals.size()];
for (int i=0 ;i<chemicals.size(); i++)
{
chemicalsArray[i] = chemicals.get(i).getChemName();
ChemNameCombo.setModel(new javax.swing.DefaultComboBoxModel<>(chemicalsArray));
}
ChemNameCombo.setSelectedItem("");
}
public void populateArrayList(){
try{
FileInputStream file = new FileInputStream("Chemicals.vic");
ObjectInputStream inputFile = new ObjectInputStream(file);
boolean endOfFile = false;
while(!endOfFile){
try {
chemicals.add((Chemicals) inputFile.readObject());
}
catch (EOFException e){
endOfFile = true;
}
catch (Exception f){
JOptionPane.showMessageDialog(null, f.getMessage());
}
}
inputFile.close();
}
catch(IOException e)
{JOptionPane.showMessageDialog(null, e.getMessage());}
}}
И это класс модели для ArrayList
public class Chemicals implements Serializable {
private String ChemName;
private String ChemCategory;
public Chemicals(String ChemName, String ChemCategory){
this.ChemName = ChemName;
this.ChemCategory = ChemCategory;
}
public void setChemName(String ChemName) {
this.ChemName = ChemName;
}
public void setChemCategory(String ChemCategory) {
this.ChemCategory = ChemCategory;
}
public String getChemName() {
return ChemName;
}
public String getChemCategory() {
return ChemCategory;
}
}
Я считаю, что я должен работать с частью кода ChemNameComboItemStateChanged, но я не знаю, как go об этом
Спасибо в ожидании