![]() |
|
||||||||||
|
|||||
|
блогер
Регистрация: Oct 2005
Адрес: Днепродзержинск - город Брежнева и других логопедов
Сообщений: 1,421
Записей в блоге: 4
|
Есть старый бок, что из-за особенностей строения клавиатуры на PC, если зажаты одновременно много (минимум 4, что-ли) клавиш, то есть нерешаемые проблемы с тем, чтобы узнать, какие именно и какие зажимаются ещё. Потому в мортал 4-й на пейси без джойстика нормально не порубиться =\ Но вродь с этими клавишами всё нормально работает.
Код в общем ничего, разве что если нажать что-то типа влево и вправо одновременно, то не напишет что надо. Что не так - не понятно. Если нажимали "влево, вниз, вверх" и не написался upPress, то не знаю, не смог воспроизвести. package { import flash.display.*; import flash.events.*; import flash.ui.*; public class Main extends Sprite { private var upPress:Boolean; private var leftPress:Boolean; private var rightPress:Boolean; private var downPress:Boolean; private var spacePress:Boolean; private var keysArr:Array = new Array(); private var keysDesc:Array = new Array(); public function Main() { stage.addEventListener(KeyboardEvent.KEY_DOWN, KeyDawnListener, false, 0, false); stage.addEventListener(KeyboardEvent.KEY_UP, KeyUpListener, false, 0, false); keysDesc[Keyboard.LEFT] = "leftPress"; keysDesc[Keyboard.RIGHT] = "rightPress"; keysDesc[Keyboard.DOWN] = "downPress"; keysDesc[Keyboard.UP] = "upPress"; keysDesc[Keyboard.SPACE] = "spacePress"; } private function KeyDawnListener (e:KeyboardEvent):void { keysArr[e.keyCode] = true; var tracestr:String = ""; for (var key:String in keysArr) { if (keysArr[key]) tracestr += keysDesc[key] + " "; } trace(tracestr); } private function KeyUpListener(e:KeyboardEvent):void { keysArr[e.keyCode] = false; } } }
__________________
Бобры отвечают на вопросы не потому, что знают на них ответы; они отвечают потому, что их спрашивают. |
![]() |
Часовой пояс GMT +4, время: 16:28. |
|
|
« Предыдущая тема | Следующая тема » |
|
|