Programing/JavaFX

JavaFX Text style 변경 TextArea, TextFrow

리커니 2019. 10. 28.
반응형

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

 

반응형

댓글

💲 추천 글