все, я новичок в графическом интерфейсе Java, у меня проблема с JComboBox, когда он срабатывает, когда я удаляю AllItems из поля со списком, чтобы обновить его, это проблема, потому что я получаю сведения о выбранных элементах и заполняю текстовые поля с помощью их, так как он стреляет в этот момент, я получаю нулевой указатель. Есть ли какой-либо простой способ иметь метод в ComboBox, который вызывается при изменении выбранного элемента, а не только при изменении содержимого поля со списком?
Код
текущий метод comboBox
private void customerComboActionPerformed(java.awt.event.ActionEvent evt) {
setDetails();
}
Способ установки элементов в поле со списком
public void setCustomers()
{
customerCombo.removeAllItems();
for (Customer curr : Main.getNewCustomerList().getCustomers())
{
customerCombo.addItem(curr);
}
}
способ установки деталей
public void setDetails()
{
Customer selected = (Customer) customerCombo.getSelectedItem();
forenameText.setText(selected.getForename());
surnameText.setText(selected.getSurname());
costperkgText.setText(String.valueOf(selected.getDeliveryCost()));
line1Text.setText(String.valueOf(selected.getColAddress().getAddressLine1()));
line2Text.setText(String.valueOf(selected.getColAddress().getAddressLine2()));
cityText.setText(String.valueOf(selected.getColAddress().getCity()));
postcodeText.setText(String.valueOf(selected.getColAddress().getPostcode()));
}