Как получить позицию mouseMove элемента? - PullRequest
0 голосов
/ 29 ноября 2018

В настоящее время у меня есть некоторый код, написанный для получения координат X и Y всякий раз, когда мышь перемещается над элементом canvas, но сейчас координаты не обновляются, а только печатают одни и те же координаты снова и снова.Как мне добиться этого, используя мой существующий код?

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 голосов
/ 29 ноября 2018

Вы добавляете currentPos в массив, но затем печатаете только первый элемент массива.

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

get (0) возвращает первую позицию мыши, добавленную в ваш массив.

Вы можете использовать это, чтобы напечатать последнюю позицию мыши:

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