繁体   English   中英

JavaFX:如何绑定到鼠标位置?

[英]JavaFX : How to bind to mouse position?

我希望在按下鼠标时从鼠标位置绑定一条线。 这是我尝试的:

scene.setOnMousePressed(e ->{
    Line line = new Line();
    root.getChildren().add(line);
    DoubleProperty x = new SimpleDoubleProperty(e.getX());
    DoubleProperty y = new SimpleDoubleProperty(e.getY());
    line.setStartX(0.0f);
    line.setStartY(0.0f);
    line.endXProperty().bind(x);
    line.endYProperty().bind(y);
    scene.setOnMouseReleased(eMoved ->{
        root.getChildren().remove(line);
    });
});

但是线没有动。 我知道我可以做这样的事情:

Line line = new Line();
root.getChildren().add(line);
line.setStartX(0.0f);
line.setStartY(0.0f);
scene.setOnMouseMoved(e ->{
    line.setEndX(e.getX());
    line.setEndY(e.getY());
});

但是移动鼠标时会有一点延迟(也许这是我所能拥有的最好的,我不知道)。 谢谢。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM