javaFX-Treeview在SplitPane中不显示任何项

javaFX-Treeview在SplitPane中不显示任何项,javafx,treeview,javafx-2,javafx-8,fxml,Javafx,Treeview,Javafx 2,Javafx 8,Fxml,我尝试在我的JavaFX应用程序中实现TreeView。但不幸的是,没有显示任何项目,但我找不到问题。我搜索了一些例子,并像他们那样做了 我将TreeView控件放在SceneBuilder中的FXML文件中,并选择生成的ControllerClass,并从该类中选择TreeView字段作为SceneBuilder中TreeView控件的id 我检查了这个问题,错误是分配了一个新的TreeView实例,但这不是我的问题,因为我直接设置了根 这是我的控制器代码: public class FXML

我尝试在我的JavaFX应用程序中实现TreeView。但不幸的是,没有显示任何项目,但我找不到问题。我搜索了一些例子,并像他们那样做了

我将TreeView控件放在SceneBuilder中的FXML文件中,并选择生成的ControllerClass,并从该类中选择TreeView字段作为SceneBuilder中TreeView控件的id

我检查了这个问题,错误是分配了一个新的TreeView实例,但这不是我的问题,因为我直接设置了根

这是我的控制器代码:

public class FXMLDocumentController implements Initializable {
    @FXML
    private Label label;
    @FXML
    private TreeView<String> treeView;
    @Override
    public void initialize(URL url, ResourceBundle rb) {
        // TODO
        TreeItem<String> root = new TreeItem<>("root");
        for (int i = 0; i < 10; i++) {
            TreeItem<String> child = new TreeItem<>("Children " + i);
            root.getChildren().add(child);
        }
        root.setExpanded(true);
        treeView.setRoot(root);// = new TreeView<String> (rootItem);  
        treeView.getSelectionModel().setSelectionMode(SelectionMode.SINGLE);
    }
}
公共类FXMLDocumentController实现可初始化{
@FXML
自有品牌;
@FXML
私人树景树景;
@凌驾
公共void初始化(URL、ResourceBundle rb){
//待办事项
TreeItem root=新的TreeItem(“根”);
对于(int i=0;i<10;i++){
TreeItem child=新的TreeItem(“Children”+i);
root.getChildren().add(child);
}
root.setExpanded(true);
treeView.setRoot(root);/=newtreeview(rootItem);
treeView.getSelectionModel().setSelectionMode(SelectionMode.SINGLE);
}
}
我的FXML代码:

<AnchorPane maxHeight="-Infinity" maxWidth="-Infinity" minHeight="-Infinity" minWidth="-Infinity" prefHeight="600.0" prefWidth="800.0" xmlns="http://javafx.com/javafx/8.0.111" xmlns:fx="http://javafx.com/fxml/1">
   <children>
      <SplitPane dividerPositions="0.29797979797979796" layoutX="134.0" layoutY="154.0" prefHeight="600.0" prefWidth="800.0" AnchorPane.bottomAnchor="0.0" AnchorPane.leftAnchor="0.0" AnchorPane.rightAnchor="0.0" AnchorPane.topAnchor="0.0">
        <items>
          <AnchorPane minHeight="0.0" minWidth="0.0" prefHeight="160.0" prefWidth="100.0">
               <children>
                  <TreeView fx:id="treeView" layoutX="39.0" layoutY="61.0" prefHeight="598.0" prefWidth="235.0" AnchorPane.bottomAnchor="0.0" AnchorPane.leftAnchor="0.0" AnchorPane.rightAnchor="0.0" AnchorPane.topAnchor="0.0" />
               </children>
            </AnchorPane>
          <AnchorPane minHeight="0.0" minWidth="0.0" prefHeight="160.0" prefWidth="100.0" />
        </items>
      </SplitPane>
   </children>
</AnchorPane>

您尚未在FXML中指定控制器类。加

fx:controller="my.package.FXMLDocumentController"
到FXML文件中的根元素(将
my.package
替换为
FXMLDocumentController
所在的实际包)