Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Delphi программирование > Общие вопросы Delphi
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 10.04.2008, 12:25   #1
_SERGEYX_
Участник клуба
 
Аватар для _SERGEYX_
 
Регистрация: 07.07.2007
Сообщений: 1,518
По умолчанию Перемещение компонентов

Добрый день.
У меня на форме динамически создается какое-то количество панелей. Эти панели можно перемещать мышкой. Вопрос: как при MouseMove узнать, что перемещаемая панель находится в зоне любой другой панели (над ней, или под ней)?.
p.s. Можно, конечно, запомнить позиции всех панелей и при перемещении проверять не попала ли перемещаемая панель в зону любой другой, но это несерьезно. Панелей могут быть сотни.... (это все нужно для раскладки мебельных заготовок на листах ДСП).
_SERGEYX_ вне форума Ответить с цитированием
Старый 10.04.2008, 12:33   #2
Ins
Форумчанин
 
Регистрация: 29.12.2007
Сообщений: 137
По умолчанию

Почему несерьезно? Занесите все панели в некий список, чтобы их все можно было перечислять в цикле, а при перемещении - делайте IntersectRect (определяет прямоугольник пересечения) своей ClientRect с ClientRect всех остальных панелей. Если хотя бы один результирующий прямоугольник не пустой - панели накладываются друг на друга.

А вообще, использовать для этой цели панели - на мой взгляд, топорно. Я как раз только что закончил статью на тему "проектирование контейнеров визуальных объектов" - если интересно - исходники статьи с примерами прилагаются.
Вложения
Тип файла: rar Article.rar (91.1 Кб, 37 просмотров)

Последний раз редактировалось Stilet; 10.04.2008 в 12:52.
Ins вне форума Ответить с цитированием
Старый 10.04.2008, 13:33   #3
_SERGEYX_
Участник клуба
 
Аватар для _SERGEYX_
 
Регистрация: 07.07.2007
Сообщений: 1,518
По умолчанию

Ins, спасибо.
_SERGEYX_ вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
перемещение формы Черничный Общие вопросы Delphi 11 10.12.2009 11:06
Перемещение картинки на JS. tunyash JavaScript, Ajax 2 27.03.2009 20:41
Перемещение кнопки? &RiU Общие вопросы Delphi 1 28.05.2008 18:13
Автоматическое перемещение Kirik JavaScript, Ajax 4 16.11.2007 17:42
Перемещение файлов Nasya Microsoft Office Excel 2 13.10.2007 20:37