@ All: Прошу прощения за поздний ответ.Я пробовал разные сценарии.И я обнаружил, что проблема с потоками.Кажется, что поле со списком еще не закончило свою работу, и jdialog открыт.И после этого поле со списком пытается завершить свою работу, поэтому фокус теряется на родительское окно.Я попытался открыть диалог в теме:
new Thread() {
public void run() {
// open dialog here
}
}.start();
И все работает нормально.Теперь я планирую открыть диалог с помощью SwingWorker:
SwingWorker worker = new SwingWorker() {
@Override
protected Object doInBackground() throws Exception {
// TODO Auto-generated method stub
// open dialog here
return null;
}
};
Это также работает.Надеюсь, что это правильный путь.Пожалуйста, дайте мне знать, если я поступаю правильно.