Adobe Flex - всплывающее окно с одним экземпляром - PullRequest
0 голосов
/ 23 декабря 2011

Мне нужно создать гибкое всплывающее окно, которое будет одним экземпляром, но мы можем сделать его видимым и невидимым, когда бы мы ни захотели его отобразить. Я не уверен, что мы можем реализовать такую ​​функциональность, используя метод createPopup или addpopup. Экземпляр должен быть один и должен обновлять его каждый раз, когда происходит какое-либо событие, и делать его видимым или невидимым.

спасибо

1 Ответ

2 голосов
/ 23 декабря 2011

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.

И я предупреждаю вас, что весь код, который я здесь написал, является кодом псевдо.

...