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

ITdreamer 05.06.2009 19:31

Не работают линки в кнопках
 
Вложений: 1
Ребята, подскажите, в чем проблема, а то я что-то не могу понять.

В первом кадре (типа титульная страница) есть 4 кнопки, каждая из которых является символом типа Button, имеет свое Instance Name и ведет на свой кадр.

В каждом разделе, есть такие же кнопки, как в первом кадре с теми же Instance Name. Они должны выполнять те же действия, что их аналоги в первом кадре, а именно, вести в другие разделы, но при этом имели другой дизайн.

Для всех кадров есть один общий ключевой кадр, где настроены EventListner'ы и функции для перехода в нужный раздел.

Запускаю тестить, и получаю: в первом кадре все кнопки работают, а их аналоги в других разделах не работают. Почему, не могу понять. Причем, когда я удаляю все кнопки из первого кадра, те, что в других разделах начинают работать.

Вопрос скорее всего глупый, но я недавно изучаю Flash.

Помогите, разобраться.

Gal4enochek 05.06.2009 19:39

По идее из первого кадра не должно быть видно кнопок, находящихся в последующих кадрах.
Может Вас устроит такой вариант, вынести кнопки на отдельный слой, который не будет меняться от кадра к кадру.

ITdreamer 05.06.2009 19:47

Я добавил скриншот, может поможет.

Я также пробовал, создать отдельные Instance Names для кнопок на титульной, и для кнопок в разделах. Но это не помогло.

Gal4enochek 05.06.2009 19:53

В слое actions создать ключевой кадр на 20 кадре и листнеры для кнопок присваивать там (из первого кадра кнопки на 20 кадре не видны). То есть код для начальных кнопок будет на первом кадре, а для всех остальных на 20-м

ITdreamer 05.06.2009 20:16

Вложений: 1
Попробовал, все равно работают только кнопки на титульной.
В разделах кнопки не работают. Хотя компилятор ошибок не выдает и не выдавал.

Щас попробовал сделать свои Instance Names для кнопок на титульной и свои Instance Names для кнопок в разделах. Соответветвенно свои Listner'ы и свои функции для 1 и 20 кадров. Все также не работает. Работают только кнопки на титульной.

Вот скриншот.

Gal4enochek 05.06.2009 20:43

В таком варианте, как у Вас у меня работаю только кнопки на первой и на 20 кадре.
1 кадр
Код AS3:

btn1.addEventListener(MouseEvent.CLICK, t1);
btn2.addEventListener(MouseEvent.CLICK, t2);
 
function t1(e:MouseEvent):void{
        this.gotoAndStop(20);
}
 
function t2(e:MouseEvent):void{
        this.gotoAndStop(40);
}

20 кадр
Код AS3:

btn11.addEventListener(MouseEvent.CLICK, t11);
btn12.addEventListener(MouseEvent.CLICK, t12);
btnmain.addEventListener(MouseEvent.CLICK, main1);
 
function t11(e:MouseEvent):void{
        this.gotoAndStop(20);
}
 
function t12(e:MouseEvent):void{
        this.gotoAndStop(40);
}
 
function main1(e:MouseEvent):void{
        this.gotoAndStop(1);
}

Но для полной работы нужно прописывать код и на 40, 60... кадрах.
причем имена функций различные. кривовато правда :(

ITdreamer 05.06.2009 20:56

Да, действительно. Так работает. Кстати, Instance Names можно не менять, а вот названия функций нужно. Способ действительно кривоватый. Ну да ладно.

Спасибо за помощь! ))

Если у кого еще будет идеи, поделитесь.

alatar 06.06.2009 17:11

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

kackbip 06.06.2009 18:00

Как, не писать? Ну это вы погорячились :-D


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

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