Клавишные события
Класс Canvas 1 подменяет метод keyReleased() в Canvas. Поскольку объект регистрируется как блок прослушивания событий, он получает клавишные события в ответ на действия пользователя, связанные с клавиатурой.
Нажатие на любую клавишу клавишной панели приводит к формированию двух клавишных событий: событие нажатия клавиши и событие отпускания клавиши. Эта программа выводит информацию о событиях отпускания клавиши. Информация о клавишном событии включает название клавиши, код клавиши и, возможно, связанное с ним обозначение игрового действия.
Название клавиши является String, которая представляет собой удобное для чтения представление клавиши, обычно сходное (если не такое же) с текстом, физически напечатанным на клавише устройства. Код клавиши является целым числом, чье значение однозначно представляет каждую клавишу. Для стандартных клавиш ITU-T, а именно от 0 до 9, * и #, код клавиши является значением уникода символа.
Программы должны использовать предписанные константы класса Canvas вместо значений уникода нажатой клавиши при проверке того, какая клавиша была нажата. Такой подход делает вашу программу более транспортабельной. Класс Canvas определяет константы для каждого из кодов клавиш, показанные в таблице 6.2.
Таблица 6.2. Константы класса Canvas, представляющие клавиши ITU-T
Константа класса Canvas | Описание | ||
public static final int KEY NUMO | Представляет клавишу 0 клавишной панели | ||
public static final int KEY NUM1 |
| Представляет клавишу 1 клавишной панели | |
public static final int KEY NUM2 | Представляет клавишу 2 клавишной панели | ||
public static final int KEY_NUM3 | Представляет клавишу 3 клавишной панели | ||
public static final int KEY NUM4 | Представляет клавишу 4 клавишной панели | ||
public static final int KEY NUM5 | Представляет клавишу 5 клавишной панели | ||
public static final int KEY_NUM6 | Представляет клавишу 6 клавишной панели | ||
public static final int KEY NUM7 | Представляет клавишу 7 клавишной панели | ||
public static final int KEY_NUM8 | Представляет клавишу В клавишной панели | ||
public static final int KEY NUM9 | Представляет клавишу В клавишной панели | ||
public static final int KEY POUND | Представляет клавишу * клавишной панели | ||
public static final int KEY STAR | Представляет клавишу # клавишной панели |
Для нестандартных ( зависящих от устройства) клавишей, таких, как кнопки Up (Вверх), Down (Вниз), Left (Влево), Right (Вправо) и Select (Выбор) на мобильных устройствах, код клавиши является значением, зависящим от реализации, и должен быть отрицательным в соответствии со спецификацией MIDP. Опять же, однако, вы должны использовать предопределенные константы, показанные в таблице 6.3, и не думать о настоящем целом значении.
Таблица 6.3. Константы класса Canvas, представляющие игровые действия, отображаемые на клавишах мобильного устройства
Константа класса Canvas | Описание |
public static final int UP | Представляет клавишу панели со стрелкой вверх |
public static final int DOWN | Представляет клавишу панели со стрелкой вниз |
public static final int LEFT public static final int RIGHT | Представляет клавишу панели со стрелкой влево Представляет клавишу панели со стрелкой вправо |
public static final int FIRE | Представляет клавишу панели со стрелкой запуска (выбора] на мобильных устройствах |