Форум Flasher.ru

Форум Flasher.ru (http://www.flasher.ru/forum/index.php)
-   ActionScript 3.0 (http://www.flasher.ru/forum/forumdisplay.php?f=83)
-   -   полиморфизм? (http://www.flasher.ru/forum/showthread.php?t=176483)

Wolsh 14.03.2012 22:40

Кто "мы"? Ты про что? Речь как раз о централизации, то есть никакая кнопка никаких отношений с кликами не имеет. Подписывается контейнер (в случае автора - стейдж).

Добавлено через 9 минут
Кнопка хранит примитивную Command/Action. Это то же самое (типа), что хранить id, и потом в Большом Центральном Кликоразделителе выуживать этот id у таргета и по нему определять метод, который запускать (что конечно было бы приятней, так как дает больше свободы с параметрами).
Если сделать подписку и execute() внутри кнопки, то есть она сама ловит клик по себе и запускает акцию, то это потребует еще кучу наворотов для контроля состояний кнопки в зависимости от ситуации с приложением. Это такая децентрализация, которая хуже мегацентрализации, имхо, так как будет рождать баг на баге и потребует кучи каких-то сомнительных условий и угловатых стежков. Впрочем, как и обычное решение на событийной модели ;)

anmelegov 15.03.2012 01:54

я сделал отдельный класс без конструктора в котором лежат статические хендлеры для кнопок... это правильно?

TanaTiX 15.03.2012 02:04

Не правильно. Конструктор есть всегда, даже если не указан явно. Правило хорошего тона - всегда писать конструктор.

anmelegov 15.03.2012 02:09

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

Добавлено через 32 секунды
а туплю.. супер класса нету =)

TanaTiX 15.03.2012 02:13

Правила хорошего тона все равно остаются ;)

anmelegov 15.03.2012 04:18

кароче у меня теперь срабатывают обработчики событий и кнопки в которую тыкнул и спрайта в котором эта кнопка лежит одновременно... как лечить?

Добавлено через 5 минут
третий аргумент сделать тру?

Добавлено через 7 минут
не....

alexcon314 15.03.2012 08:36

надо прототипу спарйта тоже свой action назначить, не? будьте последовательны.

anmelegov 15.03.2012 11:05

я экшины убрал уже

gloomyBrain 15.03.2012 12:51

Цитата:

срабатывают обработчики событий и кнопки в которую тыкнул и спрайта в котором эта кнопка лежит
Смотрите кто у события target и принимайте решение что нужно сделать

anmelegov 15.03.2012 12:56

Цитата:

Сообщение от gloomyBrain (Сообщение 1069199)
Смотрите кто у события target и принимайте решение что нужно сделать

т.е. когда у меня был один хендлер, смотреть в таргет было плохо, а когда я сделал 2 хендлера, проверять таргет 2 раза стало хорошо?


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

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