日期:2014-05-20  浏览次数:20690 次

如何在KeyListener中让回车事件失效
我现在要给一个JTextArea添加addKeyListener事件,要求如果JTextArea中的输入内容为空的话,按回车之后不换行,怎么搞呢?

------解决方案--------------------
Java code
        java.awt.EventQueue.invokeLater(new java.lang.Runnable(){
                @Override public void run(){
                    JFrame frame = new JFrame("Java Rocks");
                    final JTextArea textinput = new JTextArea(8,10);
                    JScrollPane scroller = new JScrollPane(textinput);
                    textinput.addKeyListener(new KeyAdapter(){
                            @Override public void keyPressed(KeyEvent e){
                                if (textinput.getText().trim().isEmpty() && e.getKeyCode() == KeyEvent.VK_ENTER) {
                                    e.consume();
                                }
                            }
                        });
                    frame.getContentPane().add(scroller);
                    frame.pack();
                    frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
                    frame.setLocationRelativeTo(null);
                    frame.setVisible(true);
                }
            });