![]() |
Расширение встроенного класса MovieClip
Подскажите, плз. Голова уже не варит :(
Хочу расширить подкласс, например, MC и возникают какие-то непонятки... Код в теле класса MC Код:
class MC extends MovieClipКод:
var mc:MC = new MC(); |
Мувиклипы не создаются методом new. То есть экзмепляр класса будет создан, но он не будет обладать свойствами мувиклипа.
Кроме того, после первого задания значения mc, вы строчкой ниже перебиваете его. Вам нужно либо создать пустой клип в библиотеке и назначить ему класс MC, а потом его аттачить. Либо использовать хак, чтобы изменить суперкласс клипа. |
Ну это понятно: конструктор класса можно было опустить.
Постоянно создавать мувиклипы в библиотеке с назначением подкласса МС, а потом их аттачить - не совсем удобно. Хакать суперкласс тоже не хотелось бы. Похоже на пляски с бубном. Есть вариант использовать "композицию" (К.Мук), но тоже оказалось в итоге много лишней писанины. Интересно, к примеру, расширить класс TextField невозможно через extends, а MovieClip? |
Вы же только что сами расширили MovieClip, к чему вопрос? И хак в данном случаи не так страшен и на пляски с бубном не похож.
|
Расширить - расширил, а вот работоспособность подкласса никакая и всё похоже зацикливается на этом кривом методе createEmptyMovieClip().
А на счёт хака, возникает нелицеприятный вопрос с передачей исходников заказчику: у него, то этот хак не будет проделан. P.S. Всё равно спасибо на помощь. |
Исходник класса или исходник fla с классом?
|
Исходник fla с классами.
А как правильно хакнуть, не повредив работоспособность суперкласса? Ведь в нём все методы и свойства не описываются (intrinsic). Можно краткий пример? |
С помощью createEmptyMovieClip вы создаете экземпляр MovieClip, а вам нужен MC расширяющий MovieClip, то MovieClip + еще что-то, о каком повреждении идет речь?
http://www.flasher.ru/forum/showpost...0&postcount=24 |
Всё понятно, пасибо. Я не правильно представлял себе процесс хака :)
|
| Часовой пояс GMT +4, время: 01:37. |
Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.