createPopUp требуется имя класса. Все внутренности создания всплывающего окна находятся в этом методе. Вы не сможете использовать createPopUp с существующим экземпляром окна. Однако при вызове createPopUp полученные результаты будут экземпляром нового всплывающего окна, которое вы только что создали.
Однако addPopUp принимает экземпляр уже созданного компонента. Вы хотите продолжить одним из следующих способов:
1) если всплывающий экземпляр существует; использовать addPopUp; в противном случае используйте createPopUp:
if(myPopUp){
PopUpManager.addPopUp(myPopUp, etc...)
} else {
myPopUp = PopUpManager.createPopUp(this, myPopUpClassName, etc..);
}
2) Создайте всплывающее окно самостоятельно и всегда используйте addPopUp
if(!myPopUp){
myPopUp = new myPopUpClass();
}
PopUpManager.addPopUp(myPopUp, etc...);
Всякий раз, когда вы хотите скрыть всплывающее окно, сделайте это, используя метод removePopUp () . Этот метод не уничтожит всплывающий экземпляр, просто удалите его из поля зрения.
PopUpManager.removePopUp(myPopUp);
Вам нужно будет выяснить, как хранить ссылку на ваше всплывающее окно вне PopUpManager.
И я предупреждаю вас, что весь код, который я здесь написал, является кодом псевдо.