2014-08-28 46 views
0

我正在用Java编写一个简单的文本编辑器,以便我可以编写程序。我被困在制作一个ActionListener,只要输入一个空格就会被激活。读取从JTextArea输入的最后一个字符

因此,当您在文本区域输入内容并按空格键时,它将读取您输入的最后一个单词。

这是我的代码的基本部分。

我做了一个动作监听器和所有其他的东西,现在我只需要让它读取空格。

JTextArea textarea = new JTextArea("@ECHO off" + "\n"); 
Font textareaFont = new Font("Arial", Font.BOLD, 15); 

action event = new action(); 

textarea.setFont(textareaFont); 
textarea.setForeground(Color.BLUE); 
textarea.setLineWrap(true); 
textframe.getContentPane().add(new JScrollPane(textarea)); 
textframe.setSize(525,715); 
textframe.setLocationRelativeTo(null); 
textframe.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); 
textframe.setVisible(true); 
} 

private class action implements ActionListener { 
    public void actionPerformed(ActionEvent event) { 

    } 
} 

对不起,如果我不清楚。

+0

谷歌搜索 “Java密钥绑定” – ControlAltDel 2014-08-28 15:17:57

+0

可能的[复制](http://stackoverflow.com/q/25447485/2587435) – 2014-08-28 16:26:30

回答

1

我想你会想要一个KeyListener,而不是一个ActionListener。

也许是这样的:

textarea.addKeyListener(new KeyAdapter() { 
    public void keyPressed(KeyEvent evt) { 

     if (evt.getKeyCode() == KeyEvent.VK_SPACE) { 

      //do your stuff here 
     } 
    } 
} 
0

由于Swing文本组件不响应(大部分)击键触发ActionEvent s,因此无法使用ActionListener执行此项工作。请咨询the key binding docs以获取有关如何实现您的目标的信息,但a refresher on Swing overall可能会有效。

相关问题