追加された新しい従業員をコンボボックスで選択されたものにしたいことを理解した場合
新しい従業員の名前を取得してコンボボックスに追加したら、 JComboBox#setSelectedItem(Object o)
新入社員の名前で。
つまり:
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);
更新
あなたのコメントによると:
基本:
1)[従業員の追加]ダイアログから、新しい従業員の名前またはコンボボックス内のアイテムの識別子と一致する識別子を取得します。
2)データが追加された後にsetSelectedItem(name) after the data has been added to
コンボボックス`。
そのため、雇用主の追加が表示される場合があります ダイアログは名前を返すか、データベースに追加された名前を取得するメソッドを持っています。ダイアログを閉じた後のコンボボックスクラスでは、新しいエントリでコンボボックスを更新し、[従業員の追加]ダイアログで名前を追加して、JComboBox#setSelectedItem(..)
を呼び出します。 雇用主を追加から取得した名前 ゲッターまたは静的変数を使用したダイアログ
つまり:
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;
}
}