Path path= new Path();
MoveTo moveTo = new MoveTo();
moveTo.setX(390);
moveTo.setY(165);
LineTo lineTo = new LineTo();
lineTo.setX(235);
lineTo.setY(130);
path.getElements().add(moveTo);
path.getElements().add(lineTo);
path.setStrokeWidth(5);
path.setStroke(Color.BLACK);
field.getChildren().add(path);
现在我想在我画的线上添加一个监听器 - 我想到了两种可能性:
首先:我可以以某种方式添加一个侦听器到lineTo
第二:我可以以某种方式添加一个监听器到线区域(一个Hitbox从(390,165)到(235,130),宽度为5px)
你能告诉我怎么做吗?我是JavaFX的新手,我不知道。 最后,应该可以点击一行来改变颜色。
答案 0 :(得分:2)
LineTo
只是一个逻辑元素。实际的图形实体是Path
,可以通过监听器进行增强:
path.setOnMouseClicked(new EventHandler<MouseEvent>() {
@Override
public void handle(MouseEvent t) {
path.setStroke(Color.RED);
}
});