Модераторы: LSD, AntonSaburov
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Залипание клавишь. как убрать... 
:(
    Опции темы
Gorcer
Дата 11.9.2006, 00:34 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 275
Регистрация: 30.6.2004
Где: Владивосток

Репутация: нет
Всего: 4



Здравствуйте, как убрать залипание клавишь. Мне это нужно для написания игрушки.......


--------------------
Больнее всего получить удар от человека которому доверяешь.

<удалено администрацией>
PM MAIL WWW ICQ Skype   Вверх
powerOn
Дата 11.9.2006, 08:01 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


software saboteur
****


Профиль
Группа: Участник
Сообщений: 4367
Регистрация: 7.10.2005

Репутация: 31
Всего: 159



 smile Клавиши залипают? Надо клавиатуру чистить...  smile 

А если серьезно, то что за "клавиши" (хотя я подозреваю, что это кнопки на фрайме) и причем тут java? Давайте подробнее...


--------------------
user posted image нет времени думать - нужно писать КОД!

PM MAIL   Вверх
Gorcer
Дата 12.9.2006, 00:22 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 275
Регистрация: 30.6.2004
Где: Владивосток

Репутация: нет
Всего: 4



ну вобщем сделал я обработчик на клавиатуру KeyListener.
Далее мой космический корабль летает по экрану при нажатии клавиж.
 К примеру когда держишь "A" он поворачивается против часовой. И вся проблема в том что кнопку "A" нажимаю и он дёргается один раз потом ждёт долю секунды и уже начинает крутиться по часовой.

Причину этого можно понять если нажать любую клавишу и не отпускать.
ррррррррр


--------------------
Больнее всего получить удар от человека которому доверяешь.

<удалено администрацией>
PM MAIL WWW ICQ Skype   Вверх
powerOn
Дата 12.9.2006, 08:06 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


software saboteur
****


Профиль
Группа: Участник
Сообщений: 4367
Регистрация: 7.10.2005

Репутация: 31
Всего: 159



Нужно писать код обработки событий клавиатуры (реакцию на событие) в отдельном потоке. Это уже где-то тут обсуждалось.


--------------------
user posted image нет времени думать - нужно писать КОД!

PM MAIL   Вверх
Metal_Heart
Дата 12.9.2006, 09:51 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


а почему бы и нет?
**


Профиль
Группа: Участник
Сообщений: 728
Регистрация: 31.3.2005
Где: Москва

Репутация: 1
Всего: 12



Может дело-то не в программе!
В настройках БИОСа есть такие пункты (обычно), что-то вроде этого:
1. Задержка нажатия кнопки (по умолчанию 500 милиСек)
2. Частота повторения символа нажатой кнопки (по умолчанию 250 милиСек)

Вот у тебя, Gorcer, по всей видимости эта самая проблема:
ты нажимаешь кнопку "А" - программа обрабатывает её (твой кораблик дергается), затем БИОС дает "задержку нажатия", а далее он, БИОС, с установленной частотой повторения, начинает имитировать повторные нажатия, что в результате - твой кораблик начинает вращаться.

smile

Надеюсь, что помог

Добавлено @ 09:53 
В принципе, ты можешь, например, в цикле проверять, нажата ли клавиша.


--------------------
 не стыдно учиться, а стыдно не учиться 
PM ICQ   Вверх
Gorcer
Дата 12.9.2006, 11:54 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 275
Регистрация: 30.6.2004
Где: Владивосток

Репутация: нет
Всего: 4



Metal_Heart, 
раз уж ты дал такой дельный совет, то пожалуйста скинь функцию на яве, которая будет при запуске моей проги в биосе эти параметры менять.:-)


MoonCat, 
а можно поподробней. как обработка в отдельном потоке решит проблему с залипанием?


--------------------
Больнее всего получить удар от человека которому доверяешь.

<удалено администрацией>
PM MAIL WWW ICQ Skype   Вверх
Metal_Heart
Дата 12.9.2006, 11:56 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


а почему бы и нет?
**


Профиль
Группа: Участник
Сообщений: 728
Регистрация: 31.3.2005
Где: Москва

Репутация: 1
Всего: 12



Ты не понял, тебе придеться САМОМУ отслеживать_нажата_ли_клавиша

Добавлено @ 11:57 
А БИОС, да ещё и программно, лучше не трогать НИКОГДА

Добавлено @ 12:00 
моя идея такая:

Код

while(key.pressed())
{
  do_anything();
}



--------------------
 не стыдно учиться, а стыдно не учиться 
PM ICQ   Вверх
powerOn
Дата 12.9.2006, 19:03 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


software saboteur
****


Профиль
Группа: Участник
Сообщений: 4367
Регистрация: 7.10.2005

Репутация: 31
Всего: 159



Цитата(Gorcer @  12.9.2006,  01:22 Найти цитируемый пост)
он дёргается один раз потом ждёт долю секунды и уже начинает крутиться по часовой.

Стоп! Совсем я закрутился. Извиняюсь. Думаю java тут ни причем. Эта задежка которая делает ОС. Называется она "задержка перед началом повтора". Её можно в виндовс например уменьшить через Настройки -> Клавиатура. Не думаю, что Java тут властна. 
Metal_Heart, тебе респект. 

Это сообщение отредактировал(а) MoonCat - 12.9.2006, 19:05


--------------------
user posted image нет времени думать - нужно писать КОД!

PM MAIL   Вверх
Gorcer
Дата 13.9.2006, 04:34 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 275
Регистрация: 30.6.2004
Где: Владивосток

Репутация: нет
Всего: 4



ах вот вы о чём...а я думал вы и вправду начнёте мне советовать в биос лезть или конфигурацию винда......


Metal_Heart, 
идея дельная, спасбо. попробую реализовать.


--------------------
Больнее всего получить удар от человека которому доверяешь.

<удалено администрацией>
PM MAIL WWW ICQ Skype   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "Java"
LSD   AntonSaburov
powerOn   jk1
  • Прежде, чем задать вопрос, прочтите это!
  • Книги по Java собираются здесь.
  • Документация и ресурсы по Java находятся здесь.
  • Используйте теги [code=java][/code] для подсветки кода. Используйтe чекбокс "транслит", если у Вас нет русских шрифтов.
  • Помечайте свой вопрос как решённый, если на него получен ответ. Ссылка "Пометить как решённый" находится над первым постом.
  • Действия модераторов можно обсудить здесь.
  • FAQ раздела лежит здесь.

Если Вам помогли, и атмосфера форума Вам понравилась, то заходите к нам чаще! С уважением, LSD, AntonSaburov, powerOn, jk1.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Java: GUI и Java FX приложения | Следующая тема »


 




[ Время генерации скрипта: 0.0479 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.