Форум 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)
-   -   3 способа написания кода для кнопки! (http://www.flasher.ru/forum/showthread.php?t=119431)

Evgeny_Flash_8 20.12.2008 13:29

3 способа написания кода для кнопки!
 
Здравствуйте!

У меня проблемы с кнопками.
1) Когда указываешь в самой кнопке код:

Код:

on (press) {
    nextFrame ();
}

on (press) {
    prevFrame ();
}

Проблем нет, код работает.

2) А когда вставляешь такой код:

Код:

next_btn.onPress = function () {
    nextFrame ();
}

prev_btn.onPress = function () {
    prevFrame ();
}

Не работает. Думал проблема в имени, но и с другими именами проблема, не знаю что делать..

3) А это тоже не работает!

Код:

//строгая типизация переменной
var i:Number = 1;                                // первый кадр
var j:Number = 6;                                // максимальное кол-во кадров

//определяем функцию goNextFrame()
function goNextFrame() {
        if (i<j) {
                nextFrame();
                i = i + 1;
        }
}

//определяем функцию goPrevFrame()
function goPrevFrame() {
        if (i>1) {
        prevFrame();
        i = i - 1;
        }
}

//назначаем ссылку на функцию обработчику событий кнопки onPress
next_btn.onPress = goNextFrame;

//назначаем ссылку на функцию обработчику событий кнопки onPress
prev_btn.onPress = goPrevFrame;

Научите работать с кнопками! :( Есть 3 способа, а получается только один. Скажите где моя ошибка?

Wolsh 20.12.2008 14:10

Код надо писать в кадр, а не на кнопках, как в прошлом веке.
Последний скрипт прекрасно работает. Только непонятны махинации с i и j - есть свойство currentFrame, есть totalFrames, они здесь прекрасно заменяют школьный бейсик.

aksios 20.12.2008 14:22

Экстрасенс скажет Вам что Вы делаете не правильно. Зачем ваще атачить к сообщению пример?
Я не экстрасенс, но думаю, что не правильно скорей всего то, что Вы название кнопки в библиотеке символов принимаете за имя кнопки для скрипта. Поэтому не работают кнопки.

silin 20.12.2008 19:27

у кода "на кнопке"
Код AS1/AS2:

on (press) {
    prevFrame ();
}

this - это мувик, в котором находится кнопка (к слову: это не относится к коду на мувике, там this - сам мувик)

при определении метода кнопки
Код AS1/AS2:

next_btn.onPress = function () {
    nextFrame ();
}

this в нем будет указывать на самому кнопку
отсюда и непонятки : nextFrame вызывается для разных объектов

Evgeny_Flash_8 22.12.2008 18:19

silin.
Покажи, как двумя способами организовать это?

Имена и т.д. я знаю как писать к кнопкам :)
Жду ответа!

И еще вопрос не по теме! "Как закрыть свою тему?" Пожалуйста только громко не смеяться!!! :)

Wolsh 22.12.2008 18:35

Автор не может закрыть или удалить тему - закрывают модераторы, удаляют админы.
А громко смеяться - это над просьбой "показать как". Вам оба варианта кода дали, Вам исходник с кнопкой чтоли сделать??? Пошевелите пальцем.

Evgeny_Flash_8 22.12.2008 22:03

Цитата:

Сообщение от silin (Сообщение 785096)
у кода "на кнопке"
Код AS1/AS2:

on (press) {
    prevFrame ();
}

this - это мувик, в котором находится кнопка (к слову: это не относится к коду на мувике, там this - сам мувик)

при определении метода кнопки
Код AS1/AS2:

next_btn.onPress = function () {
    nextFrame ();
}

this в нем будет указывать на самому кнопку
отсюда и непонятки : nextFrame вызывается для разных объектов

Первый код работает, а второй нет (который написан выше!!!).

Цитата:

Сообщение от Wolsh (Сообщение 785538)
Вам оба варианта кода дали, Вам исходник с кнопкой чтоли сделать??? Пошевелите пальцем.

Исходник с кнопкой не надо!!! Смотри тему выше, первый код я умею делать!!! :)
А второй не получается...
Цитата:

Сообщение от silin (Сообщение 785096)
this в нем будет указывать на самому кнопку
отсюда и непонятки : nextFrame вызывается для разных объектов

как сделать, чтобы НЕПОНЯТОК не было?
Нужен КОД

Wolsh 22.12.2008 22:13

второй код ПИШЕМ В КАДРЕ назвав кнопку "next_btn" Смотри тему выше, сообщение №2.

aksios 22.12.2008 22:16

За гранью добра и зла.

Evgeny_Flash_8 22.12.2008 22:21

Цитата:

Сообщение от Wolsh (Сообщение 785582)
второй код ПИШЕМ В КАДРЕ назвав кнопку "next_btn" Смотри тему выше, сообщение №2.

Ха-ха-ха. Об этом я в курсе!!! :) А если у меня не пашет.
+ Я делаю все по книжке...
Может мне сюда свое выложить??? Что бы вы все голову поламали???


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

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