正在读取从JTextArea输入的最后一个字符



我正在用Java制作一个简单的文本编辑器,以便编写程序。我一直在制作一个ActionListener,每当进入空间时就会激活它。

所以,当你在文本区输入并按空格键时,它会读取你输入的最后一个单词。

以下是我的代码的重要部分。

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

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) {
    }
}

如果我不清楚,我很抱歉。

我想您想要的是KeyListener,而不是ActionListener。

也许是这样的:

textarea.addKeyListener(new KeyAdapter() {
    public void keyPressed(KeyEvent evt) {
        if (evt.getKeyCode() == KeyEvent.VK_SPACE) {
            //do your stuff here
        }
     }
 }

您不能使用ActionListener执行此操作,因为Swing文本组件不会在(大多数)击键时激发ActionEvent。有关如何实现目标的信息,请参阅密钥绑定文档,但也许可以复习一下Swing的整体知识。

最新更新