Java:
import javafx.application.Application;
import javafx.scene.Scene;
import javafx.scene.control.TreeItem;
import javafx.scene.control.TreeView;
import javafx.scene.layout.StackPane;
import javafx.scene.layout.VBox;
import javafx.stage.Stage;
public class Main extends Application {
TreeView<String> tree;
public static void main(String[] args) {
launch(args);
}
@Override
public void start(Stage window){
window.setTitle("DEMACIAAAAAAAAAAAAAAAAAAAAAA");
TreeItem<String> root, ast1, ast2;
root = new TreeItem<>();
ast1 = addAst("ast1",root);
addAst("Ast1 Objekt1",ast1);
addAst("Ast1 Objekt2",ast1);
ast2 = addAst("ast2",root);
addAst("Ast2 Objekt1",ast2);
addAst("Ast2 Objekt2",ast2);
tree = new TreeView<String>(root);
VBox vbox = new VBox(30);
vbox.getChildren().add(tree);
Scene scene = new Scene(vbox);
window.setScene(scene);
window.show();
}
public TreeItem<String> addAst(String title, TreeItem<String> parent){
TreeItem<String> item = new TreeItem<>(title);
parent.getChildren().add(item);
return item;
}
----------
Hier habe ich ein TreeView in JavaFx erstellt (scheint soweit auch zu klappen), aber wenn man z.B. in die 7 Zeile der start Methode schaut sieht man, dass addAst nicht an einem Objekt gebunden ist, also einfach so aufgerufen wird. In der Schule habe ich es so gelernt, dass Funktionen, die nicht an ein Objekt gebunden sein sollen, static sind. Aber hier scheint es auch ohne static zu klappen, die Funktion ist public. Normalerweise sollte das nicht klappen, oder?
(Den Code habe ich aus einem Java Tutorial)
Zuletzt bearbeitet von einem Moderator: