JavaFX2 - sehr schlechte Leistung beim dynamischen Hinzufügen von benutzerdefinierten (fxml) Panels zum Gridpane
Problem Ich möchte einem Gridpane zur Laufzeit benutzerdefinierte Panels hinzufügen, die mit Javafx Scene Builder erstellt wurden. Mein maßgeschneidertes Bedienfeld besteht aus Schaltflächen, Beschriftungen usw.
Mein Versuch Ich habe versucht, von der Scheibe zu verlängern ...
public class Celli extends Pane{
public Celli() throws IOException{
Parent root = FXMLLoader.load(getClass().getResource("Cell.fxml"));
this.getChildren().add(root);
}
}
... und verwenden Sie dann dieses Panel in der Additionsmethode des Controllers
@FXML
private void textChange(KeyEvent event) {
GridPane g = new GridPane();
for (int i=0 : i<100; i++){
g.getChildren().add(new Celli());
}
}
}
Es funktioniert, aber es funktioniert sehr, sehr schlecht.
Was ich suche Gibt es eine Möglichkeit, Panels über den javafx scene builder zu entwerfen (und als Ergebnis diese Panels in fxml zu haben) und sie dann zur Laufzeit zu einem Gridpane hinzuzufügen, ohne diesen fxmlloader für jede Instanz zu verwenden? Ich denke, dass es wegen des fxml-Laders schlecht abschneidet. Wenn ich eine Standardtaste hinzufüge, z. ohne fxml geht es sehr viel schneller.