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

Tor4ok 10.01.2006 20:28

стандартные компоненты и обработка нажатия клавиш
 
Уж не знаю почему так...
на КНОПКУ вешую такой скрипт -
on (release, keyPress "<Right>") {
_root._globalCtrl.nextPage(_root.page);
}

_root._globalCtrl.nextPage(_root.page); - функция перехода на след. файл( что в принципе неважно)

Так вот, если добавляю из панели Components (Ctrl+F7) - компоненту Window в библиотеку, то при нажатии на КНОПКУ( к которой прицеплен этот скрипт) мышкой следующий файл загружается, а если нажимаю кнопку "стрелка вправо", то НЕТ!

Стоит только удалить этот злосчастный Window, как все начинает работать.

Вопрос- как их заставить "сосуществовать" вместе??

заранее спасибо всем отозвавшимся

Flash MX Professional 2004 7.0.1

silin 10.01.2006 21:01

какой-то конфликт событийных моделей..
решается просто:
в фрейме ( не на кнопке):
Код:

Key.addListener(kl={})
kl.onKeyDown=function(){
        if(Key.isDown(Key.RIGHT))trace('xxx')//твои действия
}


Tor4ok 10.01.2006 21:15

Цитата:

Сообщение от silin
какой-то конфликт событийных моделей..
решается просто:
в фрейме ( не на кнопке):
Код:

Key.addListener(kl={})
kl.onKeyDown=function(){
        if(Key.isDown(Key.RIGHT))trace('xxx')//твои действия
}


Пасибо :)))) мильонное, только не пойму почему если я делал вот так-
Код:

if(this.Key.isDown(Key.RIGHT)){
                trace("лалалаалал");
        }

то ничего не работало? Может, если не трудно, скажешь для чего необходимо вводить Key.addListener??

silin 10.01.2006 21:26

глянь trace(this.Key)..:)
листенер надо вводить, для того чтоб поймать событие onKeyDown
можно и по другому следить за ним, например
this.onEnterFrame=function(){
if(Key.isDown(Key.RIGHT)){ trace("лалалаалал");}
}
тока зачем..

Tor4ok 10.01.2006 21:28

брр, ну this конечно там ни к чему, пасибо за ответ огромное.
Просто уж не знал как можно обойти этот конфликт...


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

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