flex: каков наилучший способ создания многооконного веб-приложения? - PullRequest
0 голосов
/ 20 октября 2010

Я использую flex4, я ищу ответ для создания многооконного веб-приложения. Мое приложение довольно сложное, в настоящее время я знаю только, как использовать PopupManager для создания нового окна. Должен ли я создавать каждый MXML для каждого окна, которое я хочу создать? А затем загрузить MXML и положить его на сцену? Есть ли учебник, описывающий это? Я хочу, чтобы программа была модульной и простой в управлении, расширялась.

В настоящее время я использую группу, чтобы сгруппировать все элементы управления в окне, и если пользователь захочет открыть это окно, я выведу группу на передний план. Это правильный способ делать окна? Но я не могу поддержать перетаскивание.

Я хочу знать, есть ли какая-либо встроенная поддержка перетаскиваемого окна или диалога?

Также до сих пор все элементы управления помещаются в один файл mxml, возможно ли поместить одно окно (или одну группу) в отдельный файл mxml?

Ответы [ 4 ]

1 голос
/ 20 октября 2010

Вопрос не в том, что входит в какой файл, а в том, как реализовать ваши объекты или классы по отношению друг к другу.Если несколько окон имеют одинаковую структуру или общий вид элементов управления, вы, безусловно, можете создать базовый класс для этих окон, то же самое относится и к элементам управления.

Нет ничего особенно сложного в компоненте, который вы можете перетащить илиобщий набор элементов управления.У Грегора Кидди есть смысл, почему бы вам не проверить некоторые учебники по Flex?

1 голос
/ 21 октября 2010

Чтобы использовать PopupManager, вы должны сначала создать компонент mxml в своем проекте рядом с вашим приложением в папке src, содержащей TitleWindow, например, в качестве контейнера компонента, этот контейнер полезен, потому что он похож на окно, имеет закрывающий кнопка ...

Например:

<mx:TitleWindow xmlns:mx="http://www.adobe.com/2006/mxml" creationComplete="init();"  initialize="requestEvent();" width="368" close="close();" height="116" layout="absolute" backgroundAlpha="100" title="Create Folder" showCloseButton="true" x="29" y="21" borderColor="#FFFFFF" cornerRadius="10" alpha="2" themeColor="#FFFFFF">

</mx:TitleWindow>

Чтобы создать экземпляр этого компонента и открыть его из вашего приложения, вы должны использовать PopupManager например, как следующий код:

var create_folder_w: create_folder_window = create_folder_window (PopUpManager.createPopUp (this, create_folder_window, true));

PopUpManager.centerPopUp (create_folder_w); create_folder_w.addEventListener (FlexEvent.REMOVE, close_create_folder_refresh);

этот код покажет компонент окна, который я покажу вам в первой части

Надеюсь, этот простой пример поможет тебе ....

1 голос
/ 20 октября 2010

В ответ на ваш первый вопрос, посмотрите на материал MDI в Flexlib .

В ответ на ваш второй вопрос, посмотрите учебники Flex, чтобы узнать, как управлятьваш проект.

0 голосов
/ 18 апреля 2011

Чтобы иметь среду MDI, у вас есть как минимум три варианта:

  1. mx: TitleWindow - собственный компонент flex. не такой мощный
  2. Компоненты MDI в flexlib : мощный и стабильный
  3. appmdi Удивительно, но плохо документировано.

Я выбрал компонент flexlib MDI, но предлагаю взглянуть на другое решение

...