JavaFX学习笔记——用法技巧总结(一)

如何获得子节点

问题

     多个Node装入了一个Pane或者Group中,但是有时候又需要对一个Pane或Group内的Node分别做出不同的操作,而书上以及教程中只告诉我们添加子节点的步骤即

       

                                       pane.getChildren().add(node);

解决方法

     很简单,pane.getChildren().get(index)即可得到对应下标index的Node

注意

    查看API文档,pane.getChildren()返回的是ObservableList<Node>对象,因此若要暂存children,则可用下列方法

        

                            ObservableList<Node> list = pane.getChildren();

   但要注意,此时list元素的全是Node型引用变量,若要用子类的新方法则需要强制转换

                          Circle circle = new Circle(100,100,50);

                          Pane pane = new Pane();

                          ObservableList<Node> list = pane.getChildren();

                          list.add(circle);

                         list.get(0).setRadius(100)//这样是错误的

                         ((Circle) list.get(0)).setRadius(100)//先转换引用变量才能调用其新方法

猜你喜欢

转载自blog.csdn.net/weixin_40861847/article/details/84225330