Форум Flasher.ru

Форум Flasher.ru (http://www.flasher.ru/forum/index.php)
-   ActionScript 1.0/2.0 (http://www.flasher.ru/forum/forumdisplay.php?f=93)
-   -   привязка функции к продублированной кнопке (http://www.flasher.ru/forum/showthread.php?t=74039)

3r0jan 10.01.2006 14:01

привязка функции к продублированной кнопке
 
что то никак не допру =/
может кто подскажет чего не так ?
Код:

for (var n = 0; n<1; n++) {
        this.pl.duplicateMovieClip("this.pl"+n,this.getNextHighestDepth());
        this["this.pl"+n]._y = this.pl._y+(n+1)*(this.pl._height+22);
        this["this.pl"+n] =this["this.pl"+n].onRelease = function() {
        this["this.k"+n] += 1
};

:confused:
k[n] это тпа дублированное текстовое поле k1 k2 k3 и т.д.
Код:

for (var n = 0; n<1; n++) {
        this.k.duplicateMovieClip("this.k"+n, this.getNextHighestDepth());
        this["this.k"+n]._y = this.k._y+(n+1)*(this.k._height+22);
        this["this.k"+n].k = 0
}

вобщем при нажатии на кнопки не прибавляется цифра

nyctota 10.01.2006 14:48

Ну, во-первых, не хвататет закрывающей фигурной скобки в конце =)
Во-вторых, зачем так запутываться? duplicateMovieClip возвращает ссылку на только что созданный им мувик -- пользуйся этим.

3r0jan 10.01.2006 14:55

Цитата:

Сообщение от nyctota
Ну, во-первых, не хвататет закрывающей фигурной скобки в конце =)
Во-вторых, зачем так запутываться? duplicateMovieClip возвращает ссылку на только что созданный им мувик -- пользуйся этим.

куда он возвращает ссылку ? как её использовать ? а скобку эт я когда копировал просто не выделил )

nyctota 10.01.2006 15:21

Возвращает -- значит возвращает =) Можно присвоить то, что возвращается функцией, какой-либо переменной и использовать её дальше. Например
Код:

my_pl = pl.duplicateMovieClip("pl"+n,this.getNextHighestDepth());
Далее все действия производить с my_pl.

Заодно уточни, что у тебя не получается и какую версию плеера ты используешь при публикации.

3r0jan 10.01.2006 15:35

вот что неполучается http://maramor.narod.ru/libero.swf
там же и исходник имеется с тем же именем может глянеш ?
флэш 8 пользую

nyctota 10.01.2006 15:42

Из той ссылки мне не стало понятно, что у тебя не получается. Пока примени мой вариант -- присваивай переменной ссылку, возвращаемую duplicateMovieClip и работай с этой переменной в дальнейшем. Может найдешь место, где запутался, что в твоем примере не так уж сложно сделать.

П.С.: Писать за тебя код народу найдется немного. У меня не так много времени для этого. В конце-концов нужно это не мне. Поэтому не стоит сразу писать PM.

3r0jan 10.01.2006 15:48

ну вобщем дублирую я мувик k с текстовым полем k в нём что то вроде k1.k , k2.k , и так далее . при нажатии на тоже дублированую кнопку pl (pl1 , pl2)должно получаться сложение и в поле k мува k выводиться

nyctota 10.01.2006 15:55

Давай разбираться =)

1. Есть мувик, в нем текст. поле и кнопка.
2. Тебе нужно, чтоб таких мувиков надуПлировалось много, а действия, которые происходят по нажатию на кнопки этих мувиков -- однотипные.

Только надо бы выяснить, что ты там с чем складываешь?

3r0jan 10.01.2006 16:05

вобщем так ! сделал по твоему совету ! вроди получается да не так теперь вроди он выводит данные те что получаются при сложении только выводит в последнем продублированном муве хотя я нажимаю не на последнюю кнопку а на первую
Код:

for (var n = 0; n<2; n++) {
        my_k = this.k.duplicateMovieClip("this.k"+n, this.getNextHighestDepth());
        this.my_k._y = this.my_k._y+(n+1)*(this.my_k._height+22);
        this.my_k.k = 0;
        my_pl = this.pl.duplicateMovieClip("this.pl"+n, this.getNextHighestDepth());
        this.my_pl._y = this.my_pl._y+(n+1)*(this.my_pl._height+22);
        this.my_pl = this.my_pl.onRelease=function () {
                my_k.k += 1;
        };
}

вобщем есть главный мув в нём находится два мува(кнопки) и мув с динамическим текстовым полем в нём. я дублирую всё это делу ну к примеру два раза "n<2" далее я хочу чтоб при нажатии на дублированую кнопку pl2 к примеру в текстовом поле k мува k2 выводилось то что должно получиться вот тут
Код:

this.my_pl = this.my_pl.onRelease=function () {
                my_k.k += 1;
        };

а складываю 0 + 1 далее 1+1 далее 2+1 ну и так далее смотря сколько раз кликнеш

3r0jan 10.01.2006 17:09

ну мож кто подскажет а ? что делать то ?


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

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