Ниже приведен пример передачи параметров в документ fxml через пространство имен.
<?xml version="1.0" encoding="UTF-8"?>
<?import javafx.scene.control.Label?>
<?import javafx.scene.layout.BorderPane?>
<?import javafx.scene.layout.VBox?>
<VBox xmlns="http://javafx.com/javafx/null" xmlns:fx="http://javafx.com/fxml/1">
<BorderPane>
<center>
<Label text="$labelText"/>
</center>
</BorderPane>
</VBox>
Определить значение External Text
для переменной пространства имен labelText
:
import javafx.application.Application;
import javafx.fxml.FXMLLoader;
import javafx.scene.Parent;
import javafx.scene.Scene;
import javafx.stage.Stage;
import java.io.IOException;
public class NamespaceParameterExampleApplication extends Application {
public static void main(String[] args) {
launch(args);
}
@Override
public void start(Stage primaryStage) throws IOException {
final FXMLLoader fxmlLoader = new FXMLLoader(getClass().getResource("namespace-parameter-example.fxml"));
fxmlLoader.getNamespace()
.put("labelText", "External Text");
final Parent root = fxmlLoader.load();
primaryStage.setTitle("Namespace Parameter Example");
primaryStage.setScene(new Scene(root, 400, 400));
primaryStage.show();
}
}
Это должно покрыть Вас:
String lines[] = string.split("\\r?\\n");
существует только действительно две новых строки (UNIX и Windows), что необходимо волноваться о.
Вышеупомянутый код на самом деле не делает ничего видимого - это просто вычисляет, тогда выводит вычисление. Действительно ли это - код, который Вы использовали, или просто пример для этого вопроса?
попытка, делающая textAreaDoc.insertString (интервал, Строка, AttributeSet) в конце?
Возможно, это работало бы:
Удаляют двойные обратные косые черты из параметра метода разделения:
split = docStr.split("\n");
Если Вы don’t хотите пустые строки:
String.split("[\\r\\n]+")