im пытается создать окно с javafx и напечатать мой вводный ввод в это окно в разных цветах.Печать ввода, окрашенного в окно
Вот что я пытаюсь сделать в JavaFx, чтобы добавить строку после того, как окно есть.
public void start(Stage stage) {
stage.setTitle("Java chat client");
tf = new TextFlow();
Text t;
t=new Text("tetd\n");
t.setFill(Color.GREEN);
tf.getChildren().addAll(t);
t=new Text("blblblb");
tf.getChildren().add(t);
group = new Group(tf);
Scene scene = new Scene(group, 650, 150, Color.WHITE);
stage.setScene(scene);
stage.show();
}
и это то, что я пытаюсь сделать в моей основной, чтобы добавить новый текст:
public static void main(String[] args) {
Application.launch(Client.class);
Text t;
t=new Text("tetd\n");
t.setFill(Color.RED);
tf.getChildren().add(t);
group.getChildren().add(tf);
}
, когда я пытаюсь это я получаю
java.lang.IllegalArgumentException: Дети : дублированные дети добавлены: parent = Group @ 1706bae [styleClass = root]
любые советы как я могу добавить текст?
Спасибо за помощь
Возможно, так же, как в Swing: с использованием компонента, поддерживающего HTML. В FX это называется 'WebView' –
Вы можете либо HTML-форматировать текст и использовать' WebView', как предлагает @TimothyTruckle, либо использовать ['TextFlow'] (http://docs.oracle.com/javase/ 8/javafx/api/javafx/scene/text/TextFlow.html) и поместить в него элементы «Текст». Каждый «Текст» может иметь на нем другой «fill», чтобы изменить цвет. –
Как обновить сцену, чтобы добавить новую линию связи? @James_D – The8Monkey