У меня странная проблема с просмотром изображения JPEG с помощью интерфейса Java Swing Scrollable.
Мой код позволяет рисовать прямоугольник поверх изображения с помощью левой кнопки мыши.
Все работает нормально, если я не касаюсь полос прокрутки.
Но как только я прокручиваю вниз, прямоугольник рисуется в другом месте. В основном, если я переместлю сверху вниз полосу прокрутки, изображение будет нарисовано с неправильной Y-координатой. Такое же поведение при прокрутке влево-вправо, изображение рисуется с неправильной x-координатой. Эти координаты x, y представляют верхнюю левую точку (x, y), чтобы начать рисование прямоугольника.
Так что после прокрутки вниз и щелчка левой кнопкой мыши на изображении, чтобы нарисовать прямоугольник с координатой y. Ниже приведено событие, которое я добавил на одну из панелей с изображением.
public void mousePressed(MouseEvent m) {
if (SwingUtilities.isLeftMouseButton(m)) {
....
int y = m.getY(); //This y-coordinate is off whenever I scroll down the image.
...
}
}
Кто-нибудь знает, в чем может быть проблема? Я имею в виду, что я получаю y-координату от MouseEvent, поэтому я ожидаю, что она будет иметь правильное значение.
Спасибо.