Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2005.02.27;
Скачать: CL | DM;

Вниз

Не пересекаются ли созданные Panel??????   Найти похожие ветки 

 
Chip   (2005-02-08 14:57) [0]

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


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

API IntersectRect(...)


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

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


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

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


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

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

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


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

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


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

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


 
begin...end ©   (2005-02-10 17:53) [7]

> Proga   (10.02.05 17:24) [2]

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

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


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

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


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

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


 
begin...end ©   (2005-02-11 18:40) [10]

> Proga   (11.02.05 15:16) [8]

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

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


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

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



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

Текущий архив: 2005.02.27;
Скачать: CL | DM;

Наверх




Память: 0.49 MB
Время: 0.134 c
1-1108140257
Zilog
2005-02-11 19:44
2005.02.27
Можно корректно ли удалить TabSheet, с содержимым?


1-1107876213
Zubex
2005-02-08 18:23
2005.02.27
HTML в txt


3-1106690264
MakNik
2005-01-26 00:57
2005.02.27
Вызов хранимой процедуры из другой хранимой процедуры


1-1107936565
buka-p
2005-02-09 11:09
2005.02.27
неверная сортировка строк в компоненте tlistbox


14-1107366522
Narik
2005-02-02 20:48
2005.02.27
explorer.exe глючит!!!