Pokud jsem pochopil, že chcete, aby nový zaměstnanec, který byl přidán, byl tím, co je vybráno v poli se seznamem?
Jakmile získáte jméno nového zaměstnance a přidáte jej do comboboxu, jednoduše zavolejte JComboBox#setSelectedItem(Object o)
se jménem nového zaměstnance.
tj.:
String newEmpName=...;
//code to add new employee goes here
//code to fill combobox with update values goes here
//now we set the selecteditem of the combobox
comboEmployer.setSelectedItem(newEmpName);
AKTUALIZACE
Podle vašich komentářů:
Základy:
1) Získejte nové jméno zaměstnance nebo jakýkoli jiný identifikátor, který odpovídá položkám v poli se seznamem z dialogu pro přidání zaměstnance.
2) Poté jednoduše zavolejte setSelectedItem(name) after the data has been added to
combobox`.
Můžete tedy vidět Přidat zaměstnavatele dialog vrací jméno nebo má metodu, jak získat jméno, které bylo přidáno do databáze. Po zavření dialogu ve vaší třídě combobox byste obnovili combobox novými položkami, přidali jméno pomocí dialogu pro přidání zaměstnance a zavolali JComboBox#setSelectedItem(..)
se jménem, které jsme získali od Přidat zaměstnavatele dialog pomocí getrů nebo statické proměnné
tj.:
class SomeClass {
JFrame f=...;
JComboBox cb=new ...;
...
public void someMethod() {
AddEmployerDialog addEmpDialog=new AddEmployerDialog(f);//wont return until exited or new name added
String nameAdded=addEmpDialog.getRecentName();//get the name that was added
//clear combobox of all old entries
DefaultComboBoxModel theModel = (DefaultComboBoxModel)cb.getModel();
theModel.removeAllElements();
//refresh combobox with the latest names from db
fillCombo();
//now we set the selected item of combobox with the new name that was added
cb.setSelectedItem(nameAdded);
}
}
class AddEmployerDialog {
private JDialog dialog;
private String empName;//emp name will be assigned when save is pressed or whatever
public AddEmployerDialog(JFrame frame) {
dialog=new JDialog(f);
dialog.setDefaultCloseOperation(JDialog.DISPOSE_ON_CLOSE);
dialog.setModal(true);//so that we dont return control until exited or done
//add components etc
dialog.pack();
dialog.setVisible(true);
}
public String getRecentName() {
return empName;
}
}