Programing/JavaFX
JavaFX Text style 변경 TextArea, TextFrow
리커니
2019. 10. 28. 18:12
반응형
JavaFX Text style 변경 TextArea, TextFrow
결론부터 말씀드리면 TextArea의 Text 속성은 변경이 안됩니다.
public void appendLog(String log){
Text t1 = new Text(log);
t1.setStyle("-fx-fill: RED;-fx-font-weight:bold;");
textArea.appendText(t1.toString());
}
위처럼 아무리 해봐도 log내용+"-fx-fill: RED;-fx-font-weight:bold;" 이 붙어서 출력이 되죠.
그렇기 때문에 TextArea와 기능은 같지만 단순 출력이 아닌 Text의 속성을 변경해야 할 경우에는
TextFlow를 활용합니다.
public void appendLog(String log){
Text t1 = new Text(log);
t1.setStyle("-fx-fill: RED;-fx-font-weight:bold;");
textFlow.getChildren().add(t1);
}
위와 같이 textFlow객채의 children에 접근하여 text를 add 해주시면 됩니다.
위와 같이 style이 적용된 것을 확인 하실 수 있습니다.
참고) https://stackoverflow.com/questions/29149504/how-to-append-multicolor-text-in-javafx-textarea
반응형