Студопедия.Орг Главная | Случайная страница | Контакты | Мы поможем в написании вашей работы!  
 

Работаем с клавиатурой



Для работы с клавиатурой используется интерфейс KeyListener. Т. е. класс нашего апплета должен реализовывать этот интерфейс для работы с клавиатурой. В этом интерфейсе имеется три метода: keyPressed, keyReleased и keyTyped - и наш апплет должен их всех реализовать. Эти методы вызываются соответственно когда пользователь нажимает и отпускает клавишу на клавиатуре и в промежутке между нажатием/отпусканием.

Вот пример апплета, реагирующего на нажатия клавиш на клавиатуре.

import java.applet.*; import java.awt.*; import java.awt.event.*; public class FirstApplet extends Applet implements KeyListener { String s; // Выводимая строка. //Реализуем интерфейс KeyListener. public void keyPressed(KeyEvent k_e) { } public void keyReleased(KeyEvent k_e) { } public void keyTyped(KeyEvent k_e){ s+=k_e.getKeyChar(); repaint(); } public void init() { // Добавление слушателя для мышиных событий. addKeyListener(this); // Установка фокуса на апплет. requestFocus(); } public void paint(Graphics g) { //Рисуем строку. g.drawString(s, 10, 10); } }

После запуска апплета в нем будет появляться текст, который мы будем набирать на клавиатуре (для этого, возможно, придеться сначала щелкнуть на апплете мышкой). Также обратите внимание, что нажатие разных специальных клавиш будет обратываться некорректно - например, клавиша backspace не будет стирать последний символ, а будет, наоборот, добавлять еще один символ (который будет отображаться в виде квадратика). Ни и, конечно, методы keyPressed и keyReleased мы тут добавили просто потому, что они должны быть в нашем классе, так как они присутствуют в нашем интерфейсе KeyListener. В этих обработчиках мы ничего не пишем.





Дата публикования: 2014-11-04; Прочитано: 242 | Нарушение авторского права страницы | Мы поможем в написании вашей работы!



studopedia.org - Студопедия.Орг - 2014-2024 год. Студопедия не является автором материалов, которые размещены. Но предоставляет возможность бесплатного использования (0.006 с)...