2013-12-14 88 views
4

如何拼寫檢查從用戶輸入到TextArea中的文本?在TextArea中拼寫檢查文本

這是可能的這個JavaFX組件?

我可以使用Java的JavaFX標準拼寫檢查器嗎?

+0

[JavaFX TextArea中突出顯示字符串]的可能重複(http://stackoverflow.com/questions/9128535/highlighting-strings-in-javafx-textarea) – jewelsea

回答

2

您可以使用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。