如何获得元素的mouseMove位置?

时间:2018-11-29 03:06:41

标签: java arrays json mouseevent vaadin

我目前编写了一些代码,每当鼠标移到画布元素上时,就可以检索X和Y坐标,但是现在这些坐标并没有更新,只能一次又一次地打印相同的坐标。我应该如何使用现有代码实现这一目标?

Canvas.java:

public Canvas(int width, int height) {

element = getElement();
element.addEventListener("mousemove", event -> {

        JsonObject mousePos = event.getEventData();

        double mouseX = mousePos.getNumber("event.x");
        double mouseY = mousePos.getNumber("event.y");

        MousePosition currentPos = new MousePosition(mouseX, mouseY);
        mousePosArray.add(currentPos);
        System.out.println(mousePosArray.get(0));

 }).addEventData("event.x").addEventData("event.y");
}

1 个答案:

答案 0 :(得分:0)

您将currentPos添加到数组,但是仅打印数组的第一个元素

System.out.println(mousePosArray.get(0));

get(0)获取添加到数组中的第一个鼠标位置。

您可以使用它来打印鼠标的最后位置:

System.out.println(mousePosArray.get(mousePosArray.count -1));