И последнее замечание…
В листинге 16.2 реализована еще одна дополнительная возможность, перед которой я не смог устоять. Объект можно перетащить из сетки и скопировать /переместить его в другую сетку, сбрасывая на нужном корешке. Для этого мне пришлось написать общий обработчик OnMouseDown для всех сеток, а также расширить обработчики OnDragOver и OnDragDrop для компонента PageControl. Кроме того, я добавил флаг CopyDrag, устанавливаемый в том случае, если в начале перетаскивания из любой сетки была нажата клавиша Ctrl.
При перетаскивании из сетки на корешок вкладки основную долю работы выполняет процедура DropGridString. Если во время перетаскивания не была нажата клавиша Ctrl, DropGridStringвыполняет дополнительные действия и превращает обычное копирование в перемещение, убирая выделенный объект из сетки-источника и затем удаляя пустую строку.
?абочая версия программы изображена на Рисунок 16.2. Это маленькое приложение получилось довольно забавным. Вы можете перетаскивать объекты между вкладками, копировать и перемещать их. Это гораздо веселее, чем сидеть на свадьбе (особенно на своей собственной).
Конец записи (29 марта).