JavaFX
中的折线图有一个名为positioninArea
的静态方法-这是文档:
positionInArea(节点子节点,双倍面积X,双倍面积Y,双倍面积宽度,双倍面积高度,双倍面积BaselineOffset,插入页边距,HPos对齐方式,VPos对齐方式,布尔值isSnapToPixel)
一种实用程序方法,该方法将孩子定位在由areaX,areaY,areaWidth x areaHeight定义的该区域的区域内,相对于该区域的基线偏移量。
此方法用于什么?我不明白这个解释。我可以使用此方法在图表内添加一个节点,即一个矩形吗?例如:
Rectangle rec = new Rectangle(35, 35, 35, 35);
rec.setFill(Color.RED);
lineChart.positionInArea(rec, 50, 50, 35, 35, 10, new Insets(0), HPos.CENTER, VPos.CENTER, true);
我试过了,但是矩形不显示。
答案 0 :(得分:1)
positionInArea
方法不是在LineChart
上定义的,而是由Region
定义的。当覆盖Region
方法时,它主要用于帮助定位layoutChildren
的子级。它是通过修改Node
的各种布局属性来实现的。
您的Rectangle
未添加到场景图中,更不用说LineChart
的子级了。用positionInArea
调用Rectangle
将没有视觉效果。该方法不会将Node
添加到子级列表,而只是在Rectangle
上设置一些属性。