如何使用 RichTextFX 控件以不同的样式动态添加单独的行
How to add individual lines dynamically with different styles using a RichTextFX control
我正在使用此处找到的 RichTextFX 控件 https://github.com/TomasMikula/RichTextFX。我正在尝试创建一个具有不同样式的不同行的服务器日志。例如,如果一条线告诉用户好消息,例如成功,则该线将为绿色,坏消息为红色等。
感谢任何帮助。
编辑:
已经挖掘了一段时间,发现了一个 class (InlineCssTextArea),我认为它会做我想做的。但是,我在声明和实例化控件的行上得到了 java.lang.reflect.InvocationTargetException。我觉得我的罐子可能有问题?
所以我找到的解决方案是不使用 RichTextFX。它是一个太复杂的控件,并且没有明确的文档(没有 javadoc,源代码中的注释很少)。相反,我尝试使用 TextFlow 并在将它们添加到 TextFlow 之前设置单个 Text 控件的样式。像这样,
Text Stuff = new Text("Do something here");
Stuff.setFill(Color.RED); //I am red now!
TextFlow.getChildren().add(Stuff);
我不得不使用 Platform.runLater( () -> { });因为我试图从不同的线程操纵 TextFlow。希望这对其他人有帮助。
我正在使用此处找到的 RichTextFX 控件 https://github.com/TomasMikula/RichTextFX。我正在尝试创建一个具有不同样式的不同行的服务器日志。例如,如果一条线告诉用户好消息,例如成功,则该线将为绿色,坏消息为红色等。
感谢任何帮助。
编辑: 已经挖掘了一段时间,发现了一个 class (InlineCssTextArea),我认为它会做我想做的。但是,我在声明和实例化控件的行上得到了 java.lang.reflect.InvocationTargetException。我觉得我的罐子可能有问题?
所以我找到的解决方案是不使用 RichTextFX。它是一个太复杂的控件,并且没有明确的文档(没有 javadoc,源代码中的注释很少)。相反,我尝试使用 TextFlow 并在将它们添加到 TextFlow 之前设置单个 Text 控件的样式。像这样,
Text Stuff = new Text("Do something here");
Stuff.setFill(Color.RED); //I am red now!
TextFlow.getChildren().add(Stuff);
我不得不使用 Platform.runLater( () -> { });因为我试图从不同的线程操纵 TextFlow。希望这对其他人有帮助。