Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Не пересекаются ли созданные Panel?????? [D6, Win95/98]


Chip ©   (2005-02-08 14:57:00) 

Кто подскажет!
На форме по кнопке создаются Panel в run-time.
Как сделать проверку - не пересекаются ли созданные Panel.
Подскажите кусок кода, плиз!!!!!!!!!!!
Только не предлагать ControlAtPos!
Спасибо.


Proga   (2005-02-11 23:40:00) [1]

Спасибо всем за помощь,боюсь надоесть, но ещё вопросик:
Приведите, пожалуйста, пример, как записать второй параметр
для функции IntersectRect, если это касается Panel?
Заранее благодарю за объяснения!


begin...end   (2005-02-11 18:40:00) [2]

> Proga   (11.02.05 15:16) [8]

> А что означает первый параметр?

А первый параметр - это прямоугольник пересечения. Объявите переменную типа TRect и передайте её первым параметром.


REA   (2005-02-11 17:15:00) [3]

>При масштабировании формы могут "налезть" друг на друга.
Надо установить выравнивание так, чтобы не налезали.


Proga   (2005-02-11 15:16:00) [4]

Правильно я понимаю:
В IntersectRect(...) второй и третий параметры - прямоугольники Panel. А что означает первый параметр?


begin...end   (2005-02-10 17:53:00) [5]

> Proga   (10.02.05 17:24) [2]

А куда ЕЩЁ подробнее?

Границы одной и второй панелей в виде прямоугольников содержатся в их свойствах BoundsRect. Следовательно, нужно проверить, пересекаются ли эти прямоугольники. Как это сделать - уже ответили в [1]. Добавлю, что кроме API-функции есть и стандартная Delphi-функция IntersectRect (по крайней мере, в Delphi 7). Осталось только передать в неё требующиеся параметры и посмотреть на возвращённый ею результат.


Anatoly Podgoretsky   (2005-02-10 17:48:00) [6]

Proga   (10.02.05 17:24) [2]
Что случилось с твоей справкой, там очень подробно.
Переинсталируй Дельфи.


Александр Иванов   (2005-02-10 17:44:00) [7]

Александр Иванов ©   (10.02.05 17:42) [4]
Пардон, панели


Александр Иванов   (2005-02-10 17:42:00) [8]

REA   (10.02.05 17:26) [3]
Дык эта: они в случайном месте что ли создаются?

При масштабировании формы могут "налезть" друг на друга.


REA   (2005-02-10 17:26:00) [9]

Дык эта: они в случайном месте что ли создаются?


Proga   (2005-02-10 17:24:00) [10]

А подробнее, плиз!


Skier   (2005-02-08 15:11:00) [11]

API IntersectRect(...)


Наверх

Титульная страница Поиск, карта сайта Написать письмо