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

motoden 01.06.2009 18:10

перенести код с отдельного слоя на кнопку
 
Код AS1/AS2:

_root.onEnterFrame = function() {
        if (Key.isDown(Key.CONTROL)) {
                btn_4.onPress = function() {
                        gotoAndStop(7)
                }
            }
}

1) Вот этот код у меня записан на отдельном слое. Помогите пожалуйста его перенести на кнопку.
2) И ещё. Мне нужно чтобы кнопка срабатывала только при одновременном нажатии клавиши control и щелчке мыши. А если использовать такой код какой у меня сейчас, то кнопка срабатывает и при неодновременном их нажатии... а просто после того как я щелкну кнопкой мыши на кнопке, если до этого была нажата клавиша control. Помогите пожалуйста исправить код.

Wlspartak 01.06.2009 18:30

А зачем код на кнопку переносить? Назначь ей инстанс btn_4, а лучше конвертировать кнопку в мувик, присвоить имя btn_4 и обращаться к мувику.

incorp 02.06.2009 13:36

Код AS1/AS2:

btn_4.onPress = function() 
{
if (Key.isDown(Key.CONTROL)) btn_4.gotoAndStop(7);
}

у вас функция объявлялась циклично в каждом кадре. этого не нужно делать. единожды описаная функция будет работать и дальше. поэтому единожды нажав контрол вы задавали обработчик, который срабатывал при последующем клике. чтобы работал ваш вариант(хотя и не нужно так делать) достаточно в элсовой ветке задать пустой отклик, который затрет отклик который вы задали при однократном нажатии контрол. код на кнопку переносить не надо. это плохая практика. но если очень хочется и нельзя - тогда можно:
Код AS1/AS2:

on(release)
{
if (Key.isDown(Key.CONTROL)) this.gotoAndStop(7);
}


iNils 02.06.2009 13:42

Слушайте Wlspartak'а. Код на кнопках это пережиток прошлого.

Wlspartak 02.06.2009 14:09

Так я поэтому и написал:
Цитата:

А зачем код на кнопку переносить? Лучше конвертировать кнопку в мувик, присвоить имя btn_4 и обращаться к мувику.

iNils 02.06.2009 14:25

Цитата:

Сообщение от Wlspartak (Сообщение 825151)
Так я поэтому и написал:

Я говорил это автору темы :)


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

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