Форум 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=96886)

s8000_1 09.06.2007 00:31

создание представителей класса на сцене вручную
 
Всем привет.
Поискал по форуму, так и не нашел решения проблемы.
Которая заключается в следующем:

Я создал отдельный класс (допустим
Код:

class myClass extends MovieClip{
...
}

После этого хочу, чтобы некоторые мувики из библиотеки принадлежали этому классу. Для этого я выделяю клип в библиотеке мышой, жму linkage, далее export for action script и там пишу название класса. Однако возникает проблема, что нельзя нескольким мувикам присвоить один и тот же класс, возникает алерт:
http://keep4u.ru/imgs/b/070608/d007fd216da9c99b4f.jpg.

Итак, каким образом можно создать "вручную" методом копирования из библиотеки мувиков, которые обладали бы свойствами моего класса?

Я понимаю, что можно создать мувик - контейнер (этого класса), внутрь которого уже динамически грузить все остальные. Однако тогда возникнет проблема с визуальным размещением объектов на сцене (там сложные векторные объекты).

etc 09.06.2007 00:36

Написать общий класс и в либе понаделать кучу его наследников (т.е. в Base class пишешь имя общего класса, а имя класса какое-нибудь произвольное, с автоматической генерацией).

s8000_1 09.06.2007 00:47

И правда! Спасибо большущее. А я-то 1001 способ придумывал, как можно этот алерт обойти (включая использование прототипа класса MovieClip), а строки base-то и не заметил.
Проблема решена.

Racer 13.06.2007 01:18

Кошмар! Я разочарован....

etc 13.06.2007 01:30

Чем, простите? Собственно, меня больше интересует, каким образом автор темы собирался создавать разные экземпляры класса с одним именем… Даже если логически рассуждать, то это невозможно.

s8000_1 13.06.2007 14:40

Цитата:

Сообщение от __etc
Чем, простите? Собственно, меня больше интересует, каким образом автор темы собирался создавать разные экземпляры класса с одним именем… Даже если логически рассуждать, то это невозможно.

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

etc 13.06.2007 15:04

Проблемя, понятное дело, решена, но я хотел описать, что же планировалось сделать в самом начале: задав одно и то же имя класса разным элементам в библиотеке, каким-то образом потом их создавать. Ну и откуда флешу знать, какой именно брать элемент из библиотеки брать?

Racer 15.06.2007 00:53

2 __etc: Да не, всё путём. Меня ввело в заблуждение это "смещение" обозначений классов.
Вся эта игра с классами ничего хорошего не несет.
Как-то странно, когда одному объекту соответствуют два класса (Class и Base class). Не кажется ли, что тут какое-то нарушение принципов ООП?
Я даже не могу понять как это назвать... Вроде и не множественное наследование...

etc 15.06.2007 01:53

Нет никакого нарушения. Это называется наследование.

Racer 15.06.2007 02:26

мда... чем дальше влез тем жирнее партизаны...

Всё ясно. Можно либо то либо это. Вместе нельзя.
Либо Class наследник Movieclip, либо Base Class наследник Movieclip... Вместе - ругается. А нафиг такой изврат? Почему нельзя как раньше юзать один класс тот что Base Class? Зачем еще добавили индивидуальный? Всёравнож дублировать.

Идея в принципе понята.... Но создается впечатление что чото перемудрили...
Подозреваю что это связано с новой структурой АС3.

Если задан Class, то инстанцируется то что в Class, а обязательно ли чтобы Class был потомком Base class?

А если задан Base class, то то что написано в Class игнорируется? или то что в Class автоматом является потомком от Base class и оно же инстанцируется?


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

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