Форум Flasher.ru
Ближайшие курсы в Школе RealTime
Список интенсивных курсов: [см.]  
  
Специальные предложения: [см.]  
  
 
Блоги Правила Справка Пользователи Календарь Сообщения за день
 

Вернуться   Форум Flasher.ru > Flash > ActionScript 3.0

Версия для печати  Отправить по электронной почте    « Предыдущая тема | Следующая тема »  
Опции темы Опции просмотра
 
Создать новую тему Ответ
Старый 25.11.2008, 23:33
etc вне форума Посмотреть профиль Найти все сообщения от etc
  № 51  
Ответить с цитированием
etc
Et cetera
 
Аватар для etc

Регистрация: Sep 2002
Сообщений: 30,787
r_r_f_r, нет, контроллер работает с готовым компонентом, состоящем из контролов, которые, в свою очередь, созданы самим компонентом на основе каких-либо данных. Ну или в крайнем случае, как это сделано в Flex, создаются прямо в коде (после компиляции mxml-файла).

Контроллер в принципе принадлежит компоненту, а данные извне получает от родительского контроллера, например. Но это действительно для больших приложений.

Старый 26.11.2008, 03:10
r_r_f_r вне форума Посмотреть профиль Отправить личное сообщение для r_r_f_r Найти все сообщения от r_r_f_r
  № 52  
Ответить с цитированием
r_r_f_r

Регистрация: Sep 2008
Адрес: Москва
Сообщений: 224
Цитата:
Чем стандартное свойство data UIComponent`а не тянет на модель?
Что за стандартное свойство data, я такого не видел)

Цитата:
Почему нельзя создать внутри контроллер, управляющий моделью?
И почему обычный drawRect не может служить видом? Все можно запихать в 1 класс и наслаждаться работой, не подозревая о реализации.
Да, запихать можно всё в один класс, и это в большинстве случае отличный выбор, ибо описывать три класса для NumericStepper'a вовсе не нужно, но это не mvc которому нас учили в школе.

Цитата:
r_r_f_r, нет, контроллер работает с готовым компонентом, состоящем из контролов, которые, в свою очередь, созданы самим компонентом на основе каких-либо данных. Ну или в крайнем случае, как это сделано в Flex, создаются прямо в коде (после компиляции mxml-файла).

Контроллер в принципе принадлежит компоненту, а данные извне получает от родительского контроллера, например. Но это действительно для больших приложений.
Собственно это одно и тоже что говорю я, только я уделяю внимание не середине всей структуры, а корню, ведь кто-то должен создать именно три обьекта и связать их.

А вот создание трёх обьектов как-то слабо получается назвать компонентом, ибо в моём понимании при создании компонента new должно встречаться только один раз.
А если описать класс типа DisplayObjectContainer который и будет создавать эту структуру отдельно от parent'ов, то это уже как раз что я писал про обёртку.

Старый 26.11.2008, 13:08
etc вне форума Посмотреть профиль Найти все сообщения от etc
  № 53  
Ответить с цитированием
etc
Et cetera
 
Аватар для etc

Регистрация: Sep 2002
Сообщений: 30,787
Основной контроллер создает основную модель и вьюверы.

Старый 27.11.2008, 14:15
r_r_f_r вне форума Посмотреть профиль Отправить личное сообщение для r_r_f_r Найти все сообщения от r_r_f_r
  № 54  
Ответить с цитированием
r_r_f_r

Регистрация: Sep 2008
Адрес: Москва
Сообщений: 224
Цитата:
Сообщение от __etc Посмотреть сообщение
Основной контроллер создает основную модель и вьюверы.
И описывается в Document Class.
И основной вьювер - stage.

Старый 27.11.2008, 14:32
etc вне форума Посмотреть профиль Найти все сообщения от etc
  № 55  
Ответить с цитированием
etc
Et cetera
 
Аватар для etc

Регистрация: Sep 2002
Сообщений: 30,787
stage не вьювер, а контейнер. Вьювер, а точнее компонент — DocumentClass.

Старый 27.11.2008, 16:44
r_r_f_r вне форума Посмотреть профиль Отправить личное сообщение для r_r_f_r Найти все сообщения от r_r_f_r
  № 56  
Ответить с цитированием
r_r_f_r

Регистрация: Sep 2008
Адрес: Москва
Сообщений: 224
ну да, сорри, имею в виду что вьювер основной будет использовать stage своим контейнером.

Старый 04.12.2008, 00:49
s8000_1 вне форума Посмотреть профиль Отправить личное сообщение для s8000_1 Найти все сообщения от s8000_1
  № 57  
Ответить с цитированием
s8000_1
 
Аватар для s8000_1

Регистрация: Jun 2007
Сообщений: 374
А контроллер может испускать события, которые будет подхватывать другой контроллер?

Ситуация такая: мелкий контроллер создается в большом контроллере. Что-то делает локально со своим представлением. А надо вдобавок, чтобы при некоторых действиях мелкого контроллера происходили глобальные изменения.

Конкретный пример: на сцену загружаются картинки. У каждой картинки модель имеет свойство url. Глобальный контроллер создает эти локальные модели, контроллеры и представления к ним. Локальный контроллер следит за изменением url, если оно вдруг изменилось, и соответственно загружает картинку в свое представление. Надо сделать так, чтобы картинки как-то выравнивались на сцене после загрузки. Для этого я сделал событие локального контроллера "картинка загрузилась", за которым следит глобальный. Это правильно?

Старый 04.12.2008, 02:37
etc вне форума Посмотреть профиль Найти все сообщения от etc
  № 58  
Ответить с цитированием
etc
Et cetera
 
Аватар для etc

Регистрация: Sep 2002
Сообщений: 30,787
А картинка сама не может контролировать изменение url? Зачем это знать контроллеру? Картинка может сама послать Event.COMPLETE.

Старый 21.01.2009, 02:06
s8000_1 вне форума Посмотреть профиль Отправить личное сообщение для s8000_1 Найти все сообщения от s8000_1
  № 59  
Ответить с цитированием
s8000_1
 
Аватар для s8000_1

Регистрация: Jun 2007
Сообщений: 374
Ура! Я нашел решение проблемы:
Цитата:
1) А как быть с текстовыми полями? Например, контроллер - текстовое инпут-поле, рядом с ним кнопка. По нажатию на кнопку в модели апдейтится поле text, туда посылается переменная text из текстового поля. Но это же поле модели может изменить кто-либо другой => контроллер слушает события модели на предмет апдейта этого поля text.

По нажатию на кнопку я делаю апдейт модели. Модель испускает событие об изменении поля text внутри себя. Из-за этого события вызывается функция контроллера, которая апдейтит текстовое поле. Но оно уже изменилось до этого средствами флэша => эта функция вызвалась вхолостую.
Цитата:
__etc, ну зачем категорично? это комбо-система ... пример: любой уиконтрол
event.preventDefault () решает все подобного рода проблемы самоапдейта вьюверов

Старый 21.01.2009, 03:17
wvxvw вне форума Посмотреть профиль Отправить личное сообщение для wvxvw Найти все сообщения от wvxvw
  № 60  
Ответить с цитированием
wvxvw
Modus ponens
 
Аватар для wvxvw

модератор форума
Регистрация: Jul 2006
Адрес: #1=(list #1#)
Сообщений: 8,049
Записей в блоге: 38
Я может быть вообще не совсем в тему... но после нескольких экспериментов с фреймворком (PureMVC) не ощутил никакой прелести в его использовании... более того, мне почему-то кажется что эта система в целом (не только конкретный фреймворк) добавляет очень много избыточной информации, которая на практике, вместо того чтобы организовать работу ее дезорганизует заставляя _очень часто_ вызывать кучу лишних методов / проверок (естесственно, что чем больше писанины - тем больше ошибок - дольше отладка). В этом свете мне больше понравилась система с "картой событий" при которой получатели подписываются к источнику событий через единую карту (т.е. не существует контролеров).
Вот, что-то в этом духе:
http://mate.asfusion.com/assets/cont...esentation.pdf
__________________
Hell is the possibility of sanity

Создать новую тему Ответ Часовой пояс GMT +4, время: 09:29.
Быстрый переход
  « Предыдущая тема | Следующая тема »  

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.


 


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


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