Как я могу ссылаться на WindowedApplication из класса, который я создал? - PullRequest
1 голос
/ 12 ноября 2011

Я использую Flex 4.5 и импортировал собственный класс, который я написал, в основной файл MXML.

Внутри файла класса я хочу иметь возможность создать TitleWindow, используя PopUpManager, например:

package classes {
    import components.*; // My custom components
    import mx.managers.PopUpManager;

    public class SomeClass {
        public function showPopUp():void {
            PopUpManager.createPopUp(this,NewProjectPrompt,true);
        }
    }
}

NewProjectPrompt - это пользовательский компонент, который я сделал. Компилятор выдает мне следующую ошибку:

1067: Implicit coercion of a value of type classes:Project to an unrelated type flash.display:DisplayObject.

Это потому, что this не указывает на WindowedApplication. Как сделать, чтобы первый параметр в .createPopUp() указывал на WindowedApplication?

Ответы [ 2 ]

2 голосов
/ 13 ноября 2011

этот код работает!

публичная функция showPopUp () {
PopUpManager.createPopUp (FlexGlobals.topLevelApplication as DisplayObject, NewProjectPrompt, true); }

1 голос
/ 14 ноября 2011

Если ваш файл WindowedApplication называется «MyApp.mxml», то вы бы записали ссылку из компонента на него следующим образом:

MyApp(this.parentApplication)

Это вернет фактическое WindowedApplication, и вы можете вызвать его открытые методыили вставьте его в переменную, если это необходимо.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...