Однократное нажатие
Вот есть меню. Пункт выбирается стрелочками.
Но есть только функция проверки нажатости нужных клавиш. Если нажато - выбрать следующий пункт. И указатель несется как хрен знает что, сразу на двадцать пунктов за одно нажатие. Приходится вешать флажок: Код:
flag = True |
Ответ: Однократное нажатие
Может ограничить кол-во переключений в секунду? Делать переключение раз в 300-400 миллисекунд и если есть еще вызовы в течении этого отрезка времени игнорировать их.
Команды идентичной KeyHit() я так понимаю нету. |
Ответ: Однократное нажатие
Обработав нажатие, занулить key_pressed.
(инфу об удержании зажатых кнопок, если надо, хранить в другой переменной key_status) |
Ответ: Однократное нажатие
Да, можно бы и так, но "вигвам" устроен так:
Есть функция, что возвращает массив (список) boolean переменных - для каждой кнопки своя. И все. Можно его и сохранить и изменять, но смысла нет, т.к. в секунду ~30 кадров, и апдейтов. И список за секунду раз тридцать сменится. Вполне хватит, чтобы сдвинуть указатель не на один пункт, а почти до конца. Вот и завел специальную переменную. Печать с задержкой, как в приличных текстовых редакторах, особенно громоздко выглядит. P.S. Потом уже "доехал", что есть возможность отлавливать события. И события есть подходящие (KEY_UP, KEY_DOWN) |
Часовой пояс GMT +4, время: 18:48. |
vBulletin® Version 3.6.5.
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Перевод: zCarot