Форум Flasher.ru

Форум Flasher.ru (http://www.flasher.ru/forum/index.php)
-   ActionScript (http://www.flasher.ru/forum/forumdisplay.php?f=5)
-   -   помогите с registerClass!!! (http://www.flasher.ru/forum/showthread.php?t=48658)

mishinaelle 02.09.2003 17:05

помогите с registerClass!!!
 
есть код в первом фрейме:

function Test(){
trace("i was created!!!");
}
Test.prototype=new MovieClip();
Test.prototype.printMe=function(){
trace("my name is "+this._name);
}
Object.registerClass("Test", Test);

код во втором фрейме:

_root.attachMovie("Test", "testmovie", 30);
_root["testmovie"].printMe();

или такой вариант:

attachMovie("Test", "testmovie", 30);
testmovie.printMe();


нифига ничего не трэйсится! :mad:

поиск не рулит!!! так как по этой теме уже прочитала все посты - ничего не помогло

:confused:

Пушистик 02.09.2003 19:25

:)
 
упс....2 раза получилось сорри....:)нет глючит!

Пушистик 02.09.2003 19:25

:)
 
MovieClip.prototype.printMe = function() {
trace("my name is "+this._name);
};
attachMovie("Test", "testmovie", 30);
testmovie.printMe();


можно в одном кадре.....

mishinaelle 02.09.2003 19:29

блин, у меня же это написано, как второй вариант
и не пашет
ни если в одном ни если в двух.
?

iLoveYou 02.09.2003 22:55

мож, я что не понял, но все работает у меня..
выводит
i was created!!!
my name is testmovie

Пушистик 02.09.2003 22:59

:\
 
Вложений: 1
ну как это не работает?:/
Вон и у Серёги всё ОК!:)

iLoveYou 02.09.2003 23:03

да никто особо и не сомневался - код нормальный.
(у Сереги всегда все работает ;))
а _root.testmovie собственно наличествует? мож, линкаж не прописан толком?

mishinaelle 03.09.2003 12:54

Вложений: 1
2 Пушистик:
в приведенном тобой примере ты сам поместил клип в библиотеку, а у меня в примере мувик добавляется программно. и именнов этом случае ни фига не работает
посмотрите пожалуйста исходничек!
просто бред какой-то :(
мне очень срочно нужно, помогите!

Пушистик 03.09.2003 14:12

mishinaelle, ты чё за исходник дал....?там же просто код твой из первого поста.....

Цитата:

а у меня в примере мувик добавляется программно
а у меня как он добовляется?

mishinaelle 03.09.2003 14:20

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

Пушистик 03.09.2003 15:42

хиииии.....
 
а ты чё аттачишь.....?класс???

mishinaelle 03.09.2003 15:58

function Test(){
trace("i was created!!!");
}
Test.prototype=new MovieClip();//объявляем, что Test является мувиклипом

Test.prototype.printMe=function(){
trace("my name is "+this._name);
}
Object.registerClass("Test", Test);//добавляем Test в библиотеку

attachMovie("Test", testmov, 10);//аттачим экземпляр класса
testmov.printMe();


данная метода была почерпнута из хелпа по flashу

если создавать класс - потомок не мувиклипа, а Object, то никаких проблем.

Пушистик 03.09.2003 16:57

Цитата:

Test.prototype=new MovieClip();//объявляем, что Test является мувиклипом
так незя создать новый клип...так можно просто унаследовать методы класса MovieClip!то есть создать надкласс ...Но никакого муви клипа ты не создаешь!Поэтому и нечего атачить....
муви клипы создаеются с помошью метода createEmptyMovieClip();...

Пушистик 03.09.2003 17:06

Код:

function Test(name) {
    this.name = name;
    _root.createEmptyMovieClip(this.name, 1);
    this.drawSquare = function() {
        with (name) {
            lineStyle(0, 0x000000, 100);
            moveTo(200, 200);
            lineTo(220, 200);
            lineTo(220, 220);
            lineTo(200, 220);
            lineTo(200, 200);
        }
    };
    this.printMe = function() {
        trace("my name is "+this.name);
    };
}
mc = new Test("mc");
mc.printMe();
mc.drawSquare();


mishinaelle 03.09.2003 18:21

2 Пушистик:
ты не прав. открой flash, нажми f1, зайди в раздел ActionScript dictionary и посмотри статью Object.registerClass. Там черным по белому написано, что именно так можно :D

читайте хелп, уважаемые! :p

mishinaelle 03.09.2003 18:58

2 Пушистик:
извини, ты действительно прав!!!!


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

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