Форум Flasher.ru

Форум Flasher.ru (http://www.flasher.ru/forum/index.php)
-   Flex (http://www.flasher.ru/forum/forumdisplay.php?f=84)
-   -   Работа с компонентами Flex (http://www.flasher.ru/forum/showthread.php?t=131382)

Equalazer 19.10.2009 13:59

Работа с компонентами Flex
 
Хотелось бы задать пару вопросов по поводу компонентов Flex'a.
1. Может ли mxml компонент наследовать класс, ведь сам компонент по сути классом и является?
Дело в том, что каждый компонент (в моём приложении) диспатчит одни и те же события (Форма открыта, закрыта, свёрнута, dragOn, dragOff, и.т.д)
Если бы компонент наследовал класс с возможностью диспетчеризации таких событий было бы проще. Можно конечно создавать экземпляр такого класса в каждом компоненте, но наследование выглядит как то привлекательнее.

2.В достаточно большом приложении встаёт такой вопрос. При компиляци, все используемые компоненты компилируются в одну swf. Например формы регистрации, авторизации и поиска. Зарегистрированному пользователю форма регистрации уже не нужна, так зачем ему грузить её постоянно, при запуске приложения. Есть ли возможность динамически загружать компоненты? Для этого их нужно делать отдельным проектом и компилировать в отдельную swf? Или можно как то похитрому использовать класс Loader?

yorlin 19.10.2009 14:42

"Зарегистрированному пользователю форма регистрации уже не нужна, так зачем ему грузить её постоянно, "
Ну скорее всего не зарегистрированному, а авотризированному(как вы узнаете зарегестрирован пользователь или нет до авторизации?). Масса примеров когда нужна повторная регистрация. Вообще можно организавать стэйтами, тогда компоненты форм будут добавляться, только если человек перешел на форму регистраци/авторизаци/тд. А если перешел, то это его выбор, и пускай тогда грузится...

"Есть ли возможность динамически загружать компоненты?"
AS

Equalazer 19.10.2009 15:22

Тему регистрации-авторизации я вщял для примера. Извиняюсь если не правильно объяснил. Именно зарегестрированному, не важно авторизировался он или нет.
Отсюда и вопрос о динамической загрузке, ведь пока пользователь а) Не авторизировался, б) не вызвал форму регистрации. Эта форма ему не нужна и грузить её со всей приложухой нет смысла.

Ответ "AS"))) Это и так понятно. Уточняю, для этого нужно выносить компонент в отдельную swf или можно как то придумать внутри проекта?

Ещё пара вопросов, как передать в компонент параметры и получить параметры из компонента?)))

yorlin 19.10.2009 16:33

Цитата:

Сообщение от Equalazer (Сообщение 858931)
Тему регистрации-авторизации я вщял для примера. Извиняюсь если не правильно объяснил. Именно зарегестрированному, не важно авторизировался он или нет.
Отсюда и вопрос о динамической загрузке, ведь пока пользователь а) Не авторизировался, б) не вызвал форму регистрации. Эта форма ему не нужна и грузить её со всей приложухой нет смысла.

Ответ "AS"))) Это и так понятно. Уточняю, для этого нужно выносить компонент в отдельную swf или можно как то придумать внутри проекта?

Ещё пара вопросов, как передать в компонент параметры и получить параметры из компонента?)))

По поводу динамики загрузки я предложил стэйты(states).

Про AS, зачем выносить в отдельный свиф если он(АС код) будет динамически выполняться или не выполняться, условия выполнения известны, а если хочется только силами флекса, то как сказал выше, можно использовать стэйты.

"Ещё пара вопросов, как передать в компонент параметры и получить параметры из компонента?" - в зависимости от того, какой компонент...

Equalazer 19.10.2009 20:05

хмм...Интерестно))
Ну например кастомный компонент на основе Canvas, TitleWindow, одним словом на основе контейнеров.
Спасибо за ответы))

wvxvw 19.10.2009 21:59

1. Может ли mxml компонент наследовать класс?
>> Скажем так, mxml компонент не может не наследовать класс. Как минимум Object + заимплементить IMXMLObject интерфейс. Все mxml компоненты так и сделаны, по-другому у вас просто не получится.

Ещё пара вопросов, как передать в компонент параметры и получить параметры из компонента?
>> У компонента есть методы и свойства, вот к ним и обращайтесь...

Отсюда и вопрос о динамической загрузке, ведь пока пользователь а) Не авторизировался, б) не вызвал форму регистрации. Эта форма ему не нужна и грузить её со всей приложухой нет смысла.
>> Если вы используете фреймворковские компоненты, то там есть заготовка для того, чтобы делать модули, прямо так и называется, Module. если нет - то все как обычно, создаете отдельную SWF компилируете ее с -link-report/-load-extern от главной SWF и грузите Loader'ом.

Equalazer 20.10.2009 07:06

Спасибо

Добавлено через 3 часа 28 минут
Цитата:

Сообщение от wvxvw (Сообщение 859049)
Ещё пара вопросов, как передать в компонент параметры и получить параметры из компонента?
>> У компонента есть методы и свойства, вот к ним и обращайтесь...

Я имел ввиду кастомный компонент

wvxvw 20.10.2009 12:45

Цитата:

Сообщение от Equalazer (Сообщение 859107)
Я имел ввиду кастомный компонент

У кастомного компонента есть методы и свойства, вот к ним и обращайтесь...

Компилируйте с -keep вам сразу все понятнее будет.

Alek83 25.11.2009 16:12

А можно ли каким то образом модулю наследоваться от какого нибудь предка?

у меня есть набор схожих модулей.. было бы красиво дать им общего предка и скинуть на него общие методы и свойства...

Спасибо

NePridymal 25.11.2009 16:34

Наследуйте предка этого от модуля а уже компоненты свои от предка.


Часовой пояс GMT +4, время: 09:02.

Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.