Фон:
Приложение, которое я пишу, использует пользовательский компонент (расширяющий JPanel) для визуализации данных.Компонент размещается внутри JScrollPane, а MouseListener используется для мониторинга движения колесика мыши.При обнаружении движения колеса создается эффект масштабирования путем частичного увеличения или уменьшения размера компонента с помощью setSize () и setPreferredSize ().
Проблема:
Когда скорость прокрутки слишком высока, компонент, содержащийся в JScrollPane, будет мерцать во время перерисовки.
Попытка обхода:
- Установка более уточненной области перерисовки не помогает, поскольку размер всего компонента, содержащегося в JScrollPane, изменяется.
- Установка JScrollPane на удвоениеБуферизация не имеет заметного эффекта.
Одна мысль, которая у меня была, заключалась в том, чтобы ограничить скорость вращения колес.Любые предложения по реализации этого?
Другие предложения по решению этой проблемы?