Форум Flasher.ru

Форум Flasher.ru (http://www.flasher.ru/forum/index.php)
-   ActionScript (http://www.flasher.ru/forum/forumdisplay.php?f=5)
-   -   Классы!!! (http://www.flasher.ru/forum/showthread.php?t=25304)

PaulAria 02.01.2002 04:08

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

john 02.01.2002 06:21

Не бред и бред одновременно, :)
разберись с наследованием в JS ...

kepo4ka 02.01.2002 17:32

А вот все вы такие умники. Скажите человеку типа есть. А слабо ответить ?

Вообщем тема такая. Объекты есть. Но очень уж убогие.
Зато есть очень продвинутая система расширять уже существующие объекты (XML, XMLSocket... ) ...

В стандартном HELP даже есть упоминание об этом.

new Object(value);
и насколько я разбираюсь в английском. value - это может быть одно или несколько значений, которые будут дефолтными для данного объекта. (связь можно осуществить через string например ... )

можно понаписать кучу методов.
// вот типа так.

Object.prototype.Init()
{
trace('Constructor');
}

BasicAbstractClass = new Object();

BasicAbstractClass.Init();

// ну и т.д. а вообще по этой теме есть целый курс.

PaulAria 02.01.2002 18:01

Я немного подкоректирую вопрос, например я сделал листбокс, реализация: несколько кнопок, динамическое поле, экт. Смысл один кадр свернутый, второй развернутый, я хочу это все вынести в мувиклип, затем объявить его типа классом и использовать в других мувиках (как include в С++). Такое в принципе возможно?
Далнейшее развитие:
Написать скрипт, который обрабатывает параметры (количество строк, названия строк, имя, экт).
Потом использовать его как стандартный листбокс.

ish 02.01.2002 18:55

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

ну и создаем класс наподобие:

MovieClip.prototype.listBox=function() {
if((arguments.length!=0)&&(typeof(arguments[0])=="movieclip")) {
_obj=arguments[0];
} else {
trace("invalid parameter type or null");
return;
}
this.depth=Math.random()*10000;
_obj.attachMovie("listbox","_listbox"+this.depth, this.depth);
this.movie=_obj["_listbox"+this.depth];
//и тд
}

тогда можно будет создавать обьекты

myListBox=new listBox(this);
и получать доступ к его свойствам:
myListBox.movie._x=50;

ессно можно расширить функции :)

все это не писал не проверяя, так что кое где мог и ошибиться

ish 02.01.2002 19:51

ща проверил вобщем работает :)
только строчку
this.depth=Math.random()*10000;
надо заменить на
this.depth=Math.floor(Math.random()*10000);

kepo4ka 02.01.2002 20:20

:cool:

ish, так можит это зачем объяснять ж) давай сразу все сами писать ... ж)

я вот стараюсь избегать кусков собсного реализация ж)

ish 02.01.2002 20:43

Цитата:

Оригинал написал(а) kepo4ka
:cool:

ish, так можит это зачем объяснять ж) давай сразу все сами писать ... ж)

я вот стараюсь избегать кусков собсного реализация ж)

ты сам то понял что сказал? :)

PaulAria 03.01.2002 06:18

Cпасибо!!! Сейчас попробую, если интерестно могу рассказать о результатах. У меня такой вопрос, где можно взять инфу об объектах в ActionScript?

PaulAria 03.01.2002 06:20

И еще такой вопрос насколько ООП в ActionScript похоже на ООП в Java и JavaScript.


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

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