![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Создание перетаскиваемого объекта [D6]
Just a man © (2006-02-01 09:15:00)Трудно четко сформулировать вопрос... Попробую. Необходимо создать объект (линия, прямоугольник, эллипс и т.п.) на компоненте Image, который затем можно было бы перетаскивать как в Word или Автокаде. Пробовал так, нарисовать линию, а затем перерисовать ее, используя процедуру OnMouseMove, при отпускании мыши, положение фиксируется,но чувствую это не лучший выход. Подскажите хотя бы, в каком направлении копать.
Zeqfreed (2006-02-01 14:13:00) [1]Удобней всего будет, пожалуй, создать небольшую иерархию классов: базовый класс фигуры, задающий, например, положение и цвет(а) фигуры и производные от него классы, описывающие конкретные фигуры, содаржащие некоторые дополнительные свойства, специфичные для конкретной фигуры. Затем дело остается за малым: обрабатывать выбор, отрисовку и изменение свойств этих объектов.
Just a man (2006-02-01 12:27:00) [2]Терпит, конечно. Большое спасибо, вышли на alex-demv@rambler.ru
ЮЮ (2006-02-01 11:35:00) [3]
> Ведь прямоугольник создан командой Image1.Canvas.Rectangle
Так он может быть нарисован, но никак не создан.
З.Ы. Если терпит до завтра, то вышлю подобный проект, мыло оставь
Just a man (2006-02-01 10:50:00) [4]
> А при изменении размера того де прямоугольника?
Не знаю :( А правда как быть? Ведь прямоугольник создан командойImage1.Canvas.Rectangleи я не могу сообразить какие у него свойства кроме координат и цвета? Вернее они может быть и есть, но как к ним обратиться... Ведь в моем понимании это "просто рисунок".
ЮЮ (2006-02-01 10:12:00) [5]
> При движении мыши объект стирается на старом месте и рисуется
> на новом с координатами курсора мыши
Это при перетаскивании. А при изменении размера того де прямоугольника?
Just a man (2006-02-01 09:55:00) [6]
> а при манипуляциях мышью - изменять св-ва объектов и их
> перерисовывать.
Спасибо, но не совсем понял ваш ответ, можно чуть подробнее, особенно последняя фраза озадачила. В каком смысле менять свойства? При движении мыши объект стирается на старом месте и рисуется на новом с координатами курсора мыши.
ЮЮ (2006-02-01 09:29:00) [7]Направление почти правильное, только надо не "рисовать линию", а перерисовывать объекты, получая тем самым линии, прямоугольник, эллипсы, а при манипуляциях мышью - изменять св-ва объектов и их перерисовывать.