我在JavaFX中创建自己的文本编辑器,我希望括号完成。就像在Netbuns中一样。我已尝试在TextArea上使用ChangeListener并检查最后一个字符是否为括号并附加如下所示的字符:
textArea.textProperty().addListener(new ChangeListener<String>()
{
@Override
public void changed(final ObservableValue<? extends String> observable, final String oldValue, final String newValue)
{
if (textArea.getText().charAt(textArea.getText().length()-1) == '{')
{
textArea.appendText("}");
}
}
});
但由于它只检查textArea中的最后一个字符,因此对括号内括号的代码不起作用。有谁知道解决这个问题的方法?注意我使用JDK 1.7.0_55并且我的学校拒绝更新到JDK 8也可能会有所帮助。任何帮助都将不胜感激。