Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Java программирование > Общие вопросы по Java, Java SE, Kotlin
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 30.01.2014, 14:01   #1
DimonVelikij
Новичок
Джуниор
 
Регистрация: 30.01.2014
Сообщений: 1
По умолчанию Скажите пож-та, почему не работает обработчик событий клавиатуры?

Код:
package mynotebook;
import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
import static javax.swing.JFrame.EXIT_ON_CLOSE;
public class MyNotebook extends JFrame {
    MyNotebook(String s){
        super(s);
        JTextField tf=new JTextField("Введите текст",50);
        add(tf,BorderLayout.NORTH);
        JTextArea ta=new JTextArea();
        ta.setEditable(false);
        add(ta);
        JPanel p=new JPanel();
        add(p,BorderLayout.SOUTH);
        JButton b=new JButton("Перенести");
        p.add(b);
        tf.addActionListener(new TextMove(tf,ta));
        b.addActionListener(new TextMove(tf,ta));
        setSize(400,300);
        setVisible(true);
        setDefaultCloseOperation(EXIT_ON_CLOSE);
    }
    public static void main(String[] args) {
    JFrame f=new MyNotebook("Обработка клавиш");
    }
}

class TextMove implements ActionListener, KeyListener{
    private JTextField tf;
    private JTextArea ta;
    TextMove(JTextField tf, JTextArea ta){
        this.tf=tf; this.ta=ta;
    }
    public void actionPerformed(ActionEvent e){
        ta.append(tf.getText()+"\n"); 
    }
    public void keyPressed(KeyEvent ke){
        if(ke.getKeyCode()==KeyEvent.VK_ESCAPE)
            tf.setText("");
    }
    public void keyReleased(KeyEvent ke){}
    public void keyTyped(KeyEvent ke){}
}


________
Код нужно оформлять по правилам:
тегом [CODE]..[/СODE]
(это кнопочка на панели форматирования с решёточкой #)
Не забывайте об этом!

Модератор.

Последний раз редактировалось Serge_Bliznykov; 30.01.2014 в 20:26.
DimonVelikij вне форума Ответить с цитированием
Старый 25.02.2014, 15:13   #2
nikolay1982
Пользователь
 
Регистрация: 31.12.2013
Сообщений: 47
По умолчанию

Должно работать:
Код:

package mynotebook;
import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
import static javax.swing.JFrame.EXIT_ON_CLOSE;
public class MyNotebook extends JFrame {
    MyNotebook(String s){
        super(s);
        JTextField tf=new JTextField("Введите текст",50);
        add(tf,BorderLayout.NORTH);
        JTextArea ta=new JTextArea();
        ta.setEditable(false);
        add(ta);
        JPanel p=new JPanel();
        add(p,BorderLayout.SOUTH);
        JButton b=new JButton("Перенести");
        p.add(b);
		TextMove mv=new TextMove(tf,ta);
        tf.addActionListener(mv);
        b.addActionListener(mv);
		tf.addKeyListener(mv);
        setSize(400,300);
        setVisible(true);
        setDefaultCloseOperation(EXIT_ON_CLOSE);
    }
    public static void main(String[] args) {
    JFrame f=new MyNotebook("Обработка клавиш");
    }
}

class TextMove implements ActionListener, KeyListener{
    private JTextField tf;
    private JTextArea ta;
    TextMove(JTextField tf, JTextArea ta){
        this.tf=tf; this.ta=ta;
    }
    public void actionPerformed(ActionEvent e){
        ta.append(tf.getText()+"\n"); 
    }
    public void keyPressed(KeyEvent ke){
        if(ke.getKeyCode()==KeyEvent.VK_ESCAPE)
            tf.setText("");
	System.out.println("\nKeyEyvent:"+ke.getKeyCode());
    }
    public void keyReleased(KeyEvent ke){}
    public void keyTyped(KeyEvent ke){}
}
nikolay1982 вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Обработчик событий kostolomeo Помощь студентам 1 22.05.2012 07:49
обработчик событий IIaJIbI4 БД в Delphi 2 07.06.2011 15:09
С++ Обработчик событий hungry Общие вопросы C/C++ 11 12.05.2011 13:18
скажите почему работает некорректно pimiento Общие вопросы C/C++ 6 29.05.2008 17:21
обработчик событий ben95 Помощь студентам 5 28.01.2008 17:46