有 Java 编程相关的问题?

你可以在下面搜索框中键入要查询的问题!

swing Java:语法突出显示组件keyevents

我刚刚遇到了自由党。现在我正在制作一个Java编辑器,它带有一个运行按钮,可以在不编译的情况下运行代码。对于texteditor组件,我使用开源jEdit Syntax Package。这里有一个演示链接:link

现在我编写了代码,每当用户按下enter键时,就会自动添加与前一行开头相同数量的选项卡。我在一个简单的JTextArea中测试了这段代码,并且工作正常。但keyevents似乎不适用于JEditTextArea 我把这个JComponent放在一个JPanel

JEditTextArea是库中的编辑器组件。(扩展JComponent


共 (1) 个答案

  1. # 1 楼答案

    JEditTextArea的行为与正常的swingJTextComponent不同。请参阅JEditTextArea中被重写的processKeyEvent代码——它特别避免了KeyListener的性能问题

    我将密钥处理逻辑添加到JEditTextArea的方法是对DefaultInputHandler进行子类化,并覆盖addDefaultKeyBindings,使用所需的绑定和逻辑调用addKeyBinding()