В настоящее время я работаю над основным служебным программным обеспечением, которое может записывать ввод с клавиатуры и мыши, сохранять ввод в файл .txt и воспроизводить данные в файл.Я пересматриваю программу для добавления файлов и функциональности воспроизведения.У меня проблема с методом Robot.mousePress () в методе перемещения мыши:
public static void executeMouseMovementData() {
mouseRobot.mousePress(InputEvent.BUTTON1_MASK);
for (int i=0; i < MouseDataHandler.mouseData.size(); i++) {
mouseRobot.moveMouse(MouseDataHandler.mouseData.get(i).getX(), MouseDataHandler.mouseData.get(i).getY());
mouseRobot.delay(MouseDataHandler.mouseData.get(i).getTimeElapsed());
}
mouseRobot.releaseMouse();
}
Эта программа следует основной последовательности событий: 1 Инициализация данных, 2 Нажатие мыши, 3 Перемещение мыши, 4 Отпустите мышь.В отличие от другого метода, который я успешно реализовал, этот метод ни в коем случае не нажимает мышь без видимой причины.Движение мыши прекрасно работает с функцией воспроизведения.Я просто не могу заставить Робота выполнить любое событие мыши, кроме движения, даже если я реструктурирую метод.
Я попытался отредактировать метод, чтобы убедиться, что робот не нажимаетмышь в тот момент, когда нажата кнопка «воспроизведение» в графическом интерфейсе, чтобы не портить фокус события мыши.Вероятно, ошибка не связана с другими аспектами кода, потому что все остальное в программе работает без сбоев.Объект "mouseRobot" является базовым классом расширения класса Java.awt.Robot с базовым интерфейсом для сложных методов мыши Robot (), и я даже напрямую вызываю метод mousePress из класса Robot.
Чтоможет быть неисправность, которая возникает в рамках этого метода?