Я пытаюсь написать код, позволяющий перемещать и масштабировать графику, но не могу понять, как получить величину масштабирования. Я работаю в пользовательском интерфейсе Swing, и мне удалось успешно заставить прокрутку работать как для боковой, так и для вертикальной прокрутки, используя MouseWheelListener в моем JFrame, однако mouseWheelListener не обнаруживает масштабирование. Я ищу либо способ получения событий масштабирования из mouseWheelListener, либо библиотеку, которая может выдавать мне события масштабирования.
Я видел, как несколько людей использовали MouseWheelEvent.isControlDown (), однако, когда я пытаюсь это сделать, я не получаю никаких обновлений, даже при масштабировании.
Код: Выделить всё
@Override
public void mouseWheelMoved(MouseWheelEvent e) {
if (e.isControlDown()) {
System.out.println("zooming");
}
}
Я использую ноутбук Mac и безуспешно пытался найти эквивалент масштабирования с помощью мыши или клавиши. Я также попробовал включить «Системные настройки» > «Специальные возможности» > «Масштаб» > «Использовать жест прокрутки с клавишами-модификаторами для масштабирования» и «Клавиша модификатора для жеста прокрутки» установить для управления, но это тоже не сработало.
Подробнее здесь:
https://stackoverflow.com/questions/791 ... nt-in-java