在TextArea中拼写检查文本

时间:2013-12-14 17:19:24

标签: javafx javafx-2 javafx-8

如何拼写检查从用户输入的文本到TextArea?

这个JavaFX组件可以实现吗?

我可以使用Java for JavaFX的标准拼写检查程序吗?

1 个答案:

答案 0 :(得分:3)

您可以使用CodeArea突出显示错误。

CodeArea codeArea = new CodeArea();
codeArea.textProperty().addListener((observable, oldText, newText) -> {
    List<IndexRange> errors = spellCheck(newText);
    for(IndexRange error: errors) {
        codeArea.setStyleClass(error.getStart(), error.getEnd(), "spell-error");
    }
});

List<IndexRange> spellCheck(String text) {
    // Implement your spell-checking here.
}

此外,在样式表中设置错误样式

.spell-error {
    -fx-effect: dropshadow(gaussian, red, 2, 0, 0, 0);
}

请注意,您需要JDK8才能使用CodeArea。