Вниз
Скачать: CL | DM;

Создание перетаскиваемого объекта   Найти похожие ветки 

 
Just a man   (2006-02-01 09:15) [0]

Трудно четко сформулировать вопрос... Попробую. Необходимо создать объект (линия, прямоугольник, эллипс и т.п.) на компоненте Image, который затем можно было бы перетаскивать как в Word или Автокаде. Пробовал так, нарисовать линию, а затем перерисовать ее, используя процедуру OnMouseMove, при отпускании мыши, положение фиксируется,но чувствую это не лучший выход. Подскажите хотя бы, в каком направлении копать.


 
ЮЮ ©   (2006-02-01 09:29) [1]

Направление почти правильное, только надо не "рисовать линию", а перерисовывать объекты, получая тем самым линии, прямоугольник, эллипсы, а при манипуляциях мышью - изменять св-ва объектов и их перерисовывать.


 
Just a man   (2006-02-01 09:55) [2]


>  а при манипуляциях мышью - изменять св-ва объектов и их
> перерисовывать.

Спасибо, но не совсем понял ваш ответ, можно чуть подробнее, особенно последняя фраза озадачила. В каком смысле менять свойства? При движении мыши объект стирается на старом месте и рисуется на новом с координатами курсора мыши.


 
ЮЮ ©   (2006-02-01 10:12) [3]


> При движении мыши объект стирается на старом месте и рисуется
> на новом с координатами курсора мыши

Это при перетаскивании. А при изменении размера того де прямоугольника?


 
Just a man   (2006-02-01 10:50) [4]


> А при изменении размера того де прямоугольника?

Не знаю :( А правда как быть? Ведь прямоугольник создан командой Image1.Canvas.Rectangle и я не могу сообразить какие у него свойства кроме координат и цвета? Вернее они может быть и есть, но как к ним обратиться... Ведь в моем понимании это "просто рисунок".


 
ЮЮ ©   (2006-02-01 11:35) [5]


>  Ведь прямоугольник создан командой Image1.Canvas.Rectangle

Так он может быть нарисован, но никак не создан.
З.Ы. Если терпит до завтра, то вышлю подобный проект, мыло оставь


 
Just a man   (2006-02-01 12:27) [6]

Терпит, конечно. Большое спасибо, вышли на alex-demv@rambler.ru


 
Zeqfreed ©   (2006-02-01 14:13) [7]

Удобней всего будет, пожалуй, создать небольшую иерархию классов: базовый класс фигуры, задающий, например, положение и цвет(а) фигуры и производные от него классы, описывающие конкретные фигуры, содаржащие некоторые дополнительные свойства, специфичные для конкретной фигуры. Затем дело остается за малым: обрабатывать выбор, отрисовку и изменение свойств этих объектов.



Страницы: 1 вся ветка

Скачать: CL | DM;



Память: 0.46 MB
Время: 0.024 c
2-1138883438
Daria
2006-02-02 15:30
2006.02.19
проблемы с null


2-1139106124
quadronik
2006-02-05 05:22
2006.02.19
следим за значением DateTimePicker


15-1138154357
Mozart
2006-01-25 04:59
2006.02.19
PHP (с Delphi не связано но здесь же могут быть любые вопросы:) )


3-1135057161
konda
2005-12-20 08:39
2006.02.19
Пароль в Interbase


15-1138191869
Pazitron_Brain
2006-01-25 15:24
2006.02.19
CDMA телефон




   Наверх