我试图绘制一条垂直线和一条水平线,指向鼠标指向的位置,我希望看到“光标”随鼠标移动。
因此,我试图在图表中添加一条折线,但由于折线图没有getChildren()函数,因此无法添加任何内容。因此,我想拥有这样的东西:
我还在想,如果这些“光标”可以是一个对象,当我将我的类称为“光标”时,它将创建2条线,一条垂直线,一条水平线?
我的代码:
我试图使用LineBuilder画一条线,但是现在我想要的是。现在,我成功获得了鼠标的位置,现在如何绘制2条线?
NumberAxis x = new NumberAxis();
NumberAxis y = new NumberAxis();
LineChart<Number,Number> chart = new LineChart<Number,Number>(x,y);
XYChart.Series series1 = ...;
// creating a series then giving this series 100 random values
chart.getData().add(series1);
chartPane.getChildren().add(chart);
chart.setOnMousePressed((MouseEvent event) -> {
Point2D mouseSceneCoords = new Point2D(event.getSceneX(), event.getSceneY());
double x = xAxis.sceneToLocal(mouseSceneCoords).getX();
double y = yAxis.sceneToLocal(mouseSceneCoords).getY();
primaryStage.setTitle("" +
xAxis.getValueForDisplay(x) + ", " +
yAxis.getValueForDisplay(y)
);
});
Run Code Online (Sandbox Code Playgroud)
因此,现在我成功将您的代码应用到我的应用程序上,我遇到了一个问题:
我的鼠标指向该点(800,10),但是光标完全远离我的鼠标的位置。