Улучшенная версия модуля imouse.pas, появившегося в Delphi 2006.

Небольшое отступление. Что такое imouse.pas? Само слово «imouse» является сокращением от IntelliMouse. Это бренд Microsoft: мышь, в которой впервые появилось колесо прокрутки, а вместе с ним и возможность его нажимать. С одной стороны нажатие колеса является одновременно и нажатием средней кнопки мыши, с другой — дает простую возможность прокручивать документ без перемещения указателя мыши на полосу прокрутки и не накручивая километры колесом. Все что нужно — нажать колесо и оттянуть курсор вверх или вниз, влево или вправо, документ будет прокручиваться в соответствующем направлении. Эта возможность также получила название «mouse panning», чем и обусловлено название моего варианта модуля. В Mozilla Firefox данная функция называется «плавная прокрутка».

Начиная с Delphi 2006 появился этот модуль, который позволяет добавить прокрутку средней кнопкой мыши для практически любого Delphi-компонента, имеющего полосы прокрутки.

  • Устранена утечка памяти, присутствующая даже в CodeGear RAD Studio 2007 (Delphi 2007 Update 3) и Delphi 2009
  • Прокрутка средней кнопки мыши прекращается при отжатии средней кнопки мыши
  • Отрисовка сделана более похожей на отрисовку IE/Firefox
  • Убраны ненужные константы

Скачать (4,72 КБ)

Вот так это выглядит в программе:

mousepan_demoСкриншот взят из Practical Calculator.