Форум Flasher.ru
Ближайшие курсы в Школе RealTime
Список интенсивных курсов: [см.]  
  
Специальные предложения: [см.]  
  
 
Блоги Правила Справка Пользователи Календарь Сообщения за день
 

Вернуться   Форум Flasher.ru > Flash > ActionScript 1.0/2.0

Версия для печати  Отправить по электронной почте    « Предыдущая тема | Следующая тема »  
Опции темы Опции просмотра
 
Создать новую тему Ответ
Старый 04.07.2008, 18:07
ptornoltik вне форума Посмотреть профиль Отправить личное сообщение для ptornoltik Найти все сообщения от ptornoltik
  № 1  
Ответить с цитированием
ptornoltik

Регистрация: Feb 2007
Сообщений: 8
По умолчанию Работа с цифровой клавиатурой

ситуация такая: пишу приложение которое работает с цифровой клавиатурой(там где Num Lock), возникла такая проблема - при нажатии на клавишу открывается определенный слайд с одной картинкой, это я разобрался! А вот если одновременно зажато две клавиши и более надо чтобы высвечивался слайд на котором две картинки и более. Как это сделать?

Старый 04.07.2008, 18:17
DimensionB вне форума Посмотреть профиль Отправить личное сообщение для DimensionB Найти все сообщения от DimensionB
  № 2  
Ответить с цитированием
DimensionB

Регистрация: Jun 2008
Адрес: httpL//blog.incredee.com
Сообщений: 23
У тебя проблема с тем чтобы ввобще две любые нажатые клавиши отловить или только две на цифровой клавиатуре?

Старый 04.07.2008, 18:37
ptornoltik вне форума Посмотреть профиль Отправить личное сообщение для ptornoltik Найти все сообщения от ptornoltik
  № 3  
Ответить с цитированием
ptornoltik

Регистрация: Feb 2007
Сообщений: 8
две любые, с цифровой мне кажеться будет аналогично!

Старый 04.07.2008, 19:48
crazyone вне форума Посмотреть профиль Отправить личное сообщение для crazyone Найти все сообщения от crazyone
  № 4  
Ответить с цитированием
crazyone
 
Аватар для crazyone

блогер
Регистрация: Nov 2007
Адрес: Киев
Сообщений: 557
Записей в блоге: 2
Проще всего, я думаю, будет использовать isDown (Key.isDown method) в каком-нибудь обработчике. Если нажата - показывать, если не нажата - не показывать.

Старый 04.07.2008, 19:52
ptornoltik вне форума Посмотреть профиль Отправить личное сообщение для ptornoltik Найти все сообщения от ptornoltik
  № 5  
Ответить с цитированием
ptornoltik

Регистрация: Feb 2007
Сообщений: 8
Вариант! А если две нажатые?

Старый 04.07.2008, 19:55
crazyone вне форума Посмотреть профиль Отправить личное сообщение для crazyone Найти все сообщения от crazyone
  № 6  
Ответить с цитированием
crazyone
 
Аватар для crazyone

блогер
Регистрация: Nov 2007
Адрес: Киев
Сообщений: 557
Записей в блоге: 2
Для каждой кнопки проверять, я имел ввиду.

В таком духе:
Код:
clips=new Array();
clips[61]=first_mc;
clips[52]=second_mc;
onEnterFrame=function(){
for(var i in clips){
if(Key.isDown(i)){
   clips[i]._visible=true;
}else{
clips[i]._visible=false;
}
}
}


Последний раз редактировалось crazyone; 04.07.2008 в 19:59.
Старый 04.07.2008, 20:00
ptornoltik вне форума Посмотреть профиль Отправить личное сообщение для ptornoltik Найти все сообщения от ptornoltik
  № 7  
Ответить с цитированием
ptornoltik

Регистрация: Feb 2007
Сообщений: 8
а этот вариант?
Код:
var o = {};
o.onKeyDown = function(){
   if(Key.isDown(17)){
      if(Key.isDown(32)){
         trace("Вы нажали Ctrl + Spacebar"); 
      }
   }
}

Key.addListener(o);
что скажеш?


Последний раз редактировалось ptornoltik; 07.07.2008 в 15:51.
Старый 04.07.2008, 23:51
etc вне форума Посмотреть профиль Найти все сообщения от etc
  № 8  
Ответить с цитированием
etc
Et cetera
 
Аватар для etc

Регистрация: Sep 2002
Сообщений: 30,787
ptornoltik, отредактируйте свой пост и оформите код тегами [code][/code].

Старый 05.07.2008, 00:23
aksios вне форума Посмотреть профиль Отправить личное сообщение для aksios Найти все сообщения от aksios
  № 9  
Ответить с цитированием
aksios
loading 50%
 
Аватар для aksios

Регистрация: Jun 2005
Адрес: I am where I should be
Сообщений: 3,567
Отправить сообщение для aksios с помощью ICQ
Для цифровой клавы будет как то так:
Код:
var key,pushed:Number;
var ekey:String;
var keys:Array = Array();
var keyListener:Object = new Object();
for (var i = 0; i<10; i++) {
	keys[i]=0;}
keyListener.onKeyDown = function() 
{
	key=Key.getCode();
	keys[key-48]=key;
	}
keyListener.onKeyUp = function()
{
	key=Key.getCode();
	keys[key-48]=0;
}
Key.addListener(keyListener);
function update():Void {
ekey=keys.join();	
if (ekey<>"0,0,0,0,0,0,0,0,0,0"){
 trace (ekey);//Тут код для всех возможных сочетаний кнопок (ну которые зарезервированы)
for (var i = 0; i<10; i++) {
keys[i]=0;}
}}
var intervalID:Number = setInterval(update, 100);
- Сложность в том, что кнопки могут нажиматься по одной и парами и даже по несколько штук, могут опускаться в любой последовательности... поентому такой кодик.

Старый 07.07.2008, 13:33
crazyone вне форума Посмотреть профиль Отправить личное сообщение для crazyone Найти все сообщения от crazyone
  № 10  
Ответить с цитированием
crazyone
 
Аватар для crazyone

блогер
Регистрация: Nov 2007
Адрес: Киев
Сообщений: 557
Записей в блоге: 2
Цитата:
а этот вариант?
Код:
var o = {};
o.onKeyDown = function(){
if(Key.isDown(17)){
if(Key.isDown(32)){
trace("Вы нажали Ctrl + Spacebar");
}
}
}

Key.addListener(o);
что скажеш?
Он нормальный, но ведь не под твою задачу.

aksios, это ты так Key.isDown() пытаешься заменить? Зачем это?

Создать новую тему Ответ Часовой пояс GMT +4, время: 16:14.
Быстрый переход
  « Предыдущая тема | Следующая тема »  

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.


 


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


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