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

Сергей 21.02.2010 20:44

Как организовать переход на следующий кадр с помощью копки?
 
Ток начинаю осваивать флэш и вот столкнулся с первой проблемой))Помогите)))разбирался по примеру но не получается....:confused:

mooncar 21.02.2010 21:06

Допустим, btn - это имя кнопки на сцене (инстанс-имя), тогда перейти к нужному кадру можно по его имени (метке, лейблу), либо по его номеру при нажатии-отпускании кнопки.
Код AS1/AS2:

btn.onRelease = function() {
  gotoAndStop ('frame_label'); //переход к кадру с именем frame_label и остановка проигрывания.
};

Либо так:
Код AS1/AS2:

btn.onRelease = function() {
  gotoAndPlay (20); //переход к 20-му кадру и дальнейшее проигрывание
};

В качестве кнопочного символа можно использовать как экземпляр Button, так и экземпляр MovieClip. Рекомендую последее в силу многих причин.
Код записывается в кадре (не на кнопке или мувике!). Интсанс-имя экземпляра пишется в панели свойств символа.

Для вашего случая, в частности:
Код AS1/AS2:

stop(); //останавливает воспроизведение (если это еще не сделано)
 
//переход на следующий кадр по нажатию-отпусканию (клик)
btn.onRelease = function() {
  nextFrame(); //переводит головку воспроизведение текущего таймлайна на следующий кадр.
};
 
//переход на следующий кадр по нажатию
btn.onPress = function() {
  nextFrame(); //переводит головку воспроизведение текущего таймлайна на следующий кадр.
};


samana 21.02.2010 21:09

кнопка.onPress=function(){
_root.nextFrame();
}

Contemplator 21.02.2010 21:11

Цитата:

Сообщение от Сергей (Сообщение 888347)
Ток начинаю осваивать флэш и вот столкнулся с первой проблемой))Помогите)))разбирался по примеру но не получается....:confused:

конкретно к следующему и предидущему:
Код AS1/AS2:

_root.nextFrame() /*следующий кудр на главном таймлайне, 
меняешь путь (_root.my1_mc.my2_mc.) - переходишь на следующий кадр мувиклипа*/

_root.prevFrame() /*предидущий кадр*/

это всё добро пишем в теле функции, выполняемой по нажатию кнопки ;)

aksios 21.02.2010 22:28

Это все круто конечно. Но не по теме.
Вот есть у нас клип из двух кадров. Мы хотим остановиться. Нужно написать в этом кадре stop() Есть возражения? Если нет, то чтобы перейти в следующий кадр на кнопке для события нажатия кнопки нужно выполнить команду play (); и во втором кадре опять нужно написать stop();
Итак, прямо на кнопке написать :
Код AS1/AS2:

on (release) {
        play()
}

А в кадрах поставить stop(); предварительно преобразовав их keyFrame.

Сергей 21.02.2010 23:21

Вау как все ответили))))))гг буду пробовать)))Крутой форум))))Пасиб всем))


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

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