1.GridPane:它是一种 layout,布局方式类似表格,它非常的灵活,可以任意设置任何Node到任何GridCell,甚至可以自由设置GridSPan,方便一个cell跨越多行或者多列
重要属性:
(1)gridLineVisible:如果设置为true的话,那么现实时可以看到表格的线条,这个属性在开发期间很有用
(2)gap:包括了HGap和VGap,分别表示水平方向和竖直方向的gap(分隔大小),特别需要注意的是,默认情况下,gap都是0,但是如果设置了gap的值,并且在
GridLineVisible为true的情况下,显示时可以明显看到gap也形成了一行或者一列!但是实际是没有的,所以建议使用默认值!
2.设置某个Node在GridPane中的行列坐标的方法:
(1)使用GridPane的静态方法:GridPane.setConstraints(circle1, 0, 0);
(2)使用对象的add方法:rsGridPane.add(circle1,0,0);
两者的效果是一样的,并且方法都得到了重载,可以设置更多的内容,比如hspan或者vspan
如果使用了方法(1),那么还需要将node添加到gridpane中:rsGridPane.getChildren().addAll(circle1, circle2, circle3, circle4);
3.StackPane:它是类似于以前的CardLayout的一种卡片布局方式,就是后面的内容会显示在前面内容之上,所以,这种布局很方便用于在图片上显示文字等等。。。
例如:
StackPane stackPane = new StackPane(); Rectangle block = new Rectangle(30, 30); block.setStroke(Color.web("#118899")); block.setArcHeight(10); block.setArcWidth(10); Text blockNumber = new Text("3"); blockNumber.setFill(Color.RED); blockNumber.setFont(Font.font("Amble Cn", FontWeight.BOLD, 18)); stackPane.getChildren().addAll(block,blockNumber);
显示效果: