Форум Flasher.ru

Форум Flasher.ru (http://www.flasher.ru/forum/index.php)
-   ActionScript 3.0 (http://www.flasher.ru/forum/forumdisplay.php?f=83)
-   -   Наследование абстрактного базового класса FlexSDK (http://www.flasher.ru/forum/showthread.php?t=187234)

Sintesis 16.11.2012 03:17

Наследование абстрактного базового класса FlexSDK
 
Хочу создать экземпляр своего класса, но класс является наследником InteractiveObject, как это делается? И почему вызов конструктора таких классов приводит к ошибке? Где вообще лежит открытый код пакетов входящих в FlexSDK, хочется посмотреть.

Добавлено через 12 минут
Тут прочитал, что ни наследоваться ни вызывать их нельзя http://flasher.ru/forum/showpost.php...1&postcount=94
Вообще как так? А как например спрайт их наследует?

djyamato 16.11.2012 05:56

Для флэш билдера
Цитата:

Сообщение от Sintesis (Сообщение 1104644)
Где вообще лежит открытый код пакетов входящих в FlexSDK, хочется посмотреть.

Project->Properties->FlexCompiller->Configure Fle SDKs

Также Вы можете (по крайней мере во флэш билдере) нажать мышкой на интересующий Вас пакет (или переменную, да на что угодно почти) с зажатой клавишой Ctrl. Билдер откроет этот класс или перебросит к объявлению переменной.

caseyryan 16.11.2012 07:44

Цитата:

Также Вы можете (по крайней мере во флэш билдере) нажать мышкой на интересующий Вас пакет (или переменную, да на что угодно почти) с зажатой клавишой Ctrl. Билдер откроет этот класс или перебросит к объявлению переменной.
Не совсем так. Вообще, это есть (наверное) в любой IDE (to to declaration). В ФД нажатие F4 делает то же самое. Сомневаюсь, что кто-то из отписавшихся в этой теме не знал этого.
Но код в скомпилированых классах он не покажет. Переброс произойдет к модели класса, что-то на подобие интерфейса.
Код класса InteractiveObject, так же как и спрайта и мувиклипа, написан на С++, посмотреть их нигде нельзя. Они вшиты в плеер.
Я тоже как-то раньше упорно искал где их можно посмотреть.
Не знаю с чем связано нежелание adobe разрешить расширять его, но не думаю, что для этого потребовалось сделать что-то сложное.

Wolsh 16.11.2012 10:26

)) Да че уж там сложного.. достаточно посмотреть на классы, которые расширяют InteractiveObject, и подумать о том, как бы Вы сами написали на AS3 подобные: TextField, DisplayObjectContainer, SimpleButton (не наследующие контейнер! Контейнер на той же ветке. Никаких addChild() еще не существует в природе)... Есть мысли?
Классы плеера обеспечивают функциональность, которую невозможно написать на AS3. И здесь "внутренняя" линейка наследования, для разработчика на AS3 говорящая только о накоплении "интерфейсов", пока на вершине не образуется некий конечный класс, доступный для AS3-наследования.
В чем проблема то собственно? Хочется интерактивный шейп? Какой еще интерактивный объект можно создать, наследуя InteractiveObject? (напоминаю, контейнеров еще нет. Всё, что можно иметь как отображение, это Graphics). Мне правда интересно.

caseyryan 16.11.2012 12:09

Может это чистое любопытство? Реально нет ничего такого на АС3 для чего могло бы потребоваться наследование самого InteractiveObject, но на С++ исходники этих классов я бы сам с удовольствием посмотрел )

Sintesis 16.11.2012 15:44

Цитата:

Сообщение от caseyryan (Сообщение 1104669)
Может это чистое любопытство? Реально нет ничего такого на АС3 для чего могло бы потребоваться наследование самого InteractiveObject, но на С++ исходники этих классов я бы сам с удовольствием посмотрел )

например мне нужно слушать клавиатуру не в руте программы, что для этого делать? Передавать stage через несеколько классов?

Добавлено через 2 минуты
Цитата:

Сообщение от caseyryan (Сообщение 1104655)
Я тоже как-то раньше упорно искал где их можно посмотреть.

Так вроде недавно Adobe отпустили FlexSDK и сделали его опенрсорс?

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

Сообщение от Wolsh (Сообщение 1104661)
В чем проблема то собственно? Хочется интерактивный шейп?

Хочется просто класс умеющий слушать клавиатуру.
Попробовал наследоваться от Спрайт и на его стейдж повесить слушатели клавиш, но нет, не слушает, только корневой стейдж слушается или я что-то не так делаю?

caseyryan 16.11.2012 15:58

Цитата:

Так вроде недавно Adobe отпустили FlexSDK и сделали его опенрсорс?
Они не во флексе хранятся. А вшиты в плеер

Sintesis 16.11.2012 16:08

Цитата:

Сообщение от caseyryan (Сообщение 1104719)
Они не во флексе хранятся. А вшиты в плеер

А я раскатал губу... Так а какие ещё варианты с классом который может слушать клавиатуру?

udaaff 16.11.2012 16:34

Цитата:

Попробовал наследоваться от Спрайт и на его стейдж повесить слушатели клавиш, но нет, не слушает, только корневой стейдж слушается или я что-то не так делаю?
Стейдж один, вроде как.

in4core 16.11.2012 16:36

Цитата:

Так а какие ещё варианты с классом который может слушать клавиатуру?
Тоесть у вас не получается sprite.stage.addEventListener(keyboard...) так чтоли? Неправда - это будет работать


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

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