我的JavaFX应用程序中有一个显示文本区域。
它有几种方法可以附加字符串。
我想要的是任何新添加的文本都有某种反馈,以便用户更直观地了解正在显示的新文本。
理想情况下,我想要的是以下其中一项,但我对其他建议非常开放:
虽然我再次接受建议!
谢谢。
答案 0 :(得分:1)
根据Highlighting Strings in JavaFX TextArea的建议,您可以选择新文字。
假设文本区域不可编辑,并且您只是追加到现有文本的末尾,则可以执行以下操作:
textArea.textProperty().addListener((obs, oldText, newText) -> {
if (newText.length() > oldText.length()) {
Platform.runLater(() ->
textArea.selectRange(oldText.length(), newText.length()));
}
});
如果您的文本区域是可编辑的,或者您正在更普遍地使用它,则每次附加文本时都可以执行类似的操作。例如:
String message = ... ;
textArea.positionCaret(textArea.getLength());
textArea.appendText(message);
textArea.extendSelection(textArea.getLength());
答案 1 :(得分:0)
也许尝试使用RichTextArea(https://github.com/TomasMikula/RichTextFX),然后有很多可能以不同的方式显示您的文字。