![]() |
|
Модераторы: Poseidon, Snowy, bems, MetalFan |
![]()
|
|
| neutrino |
|
|||
![]() Gothic soul ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 3041 Регистрация: 25.3.2002 Где: Верхняя Галилея, Кармиэль Репутация: нет Всего: 62 |
Здравствуйте, господа.
На этот раз я хочу вас спросить на предмет существования такой функции, которая возвращает ClientRect компонента, только относительно системы координат всего монитора. Приведенный ниже код решает эту задачу путем рекурсии. Вопрос в том, что существует ли такая функция. function GetParentBounds(AParent: TControl): TRect; begin if not(AParent is TForm) then begin Result := GetParentBounds(AParent.Parent); Result.Left := Result.Left+AParent.Left; Result.Top := Result.Top+AParent.Top; Result.Right := Result.Left+AParent.ClientWidth; Result.Bottom := Result.Top+AParent.ClientHeight; end else with AParent as TForm do begin Result := BoundsRect; Result.Left := Result.Left+(Width-ClientWidth); Result.Top := Result.Top+(Height-ClientHeight); Result.Right := Result.Right-(Width-ClientWidth); Result.Bottom := Result.Bottom-(Height-ClientHeight); end; end; P.S. Если таковой функции нет, возможно (на усмотрение модератора) эту стоит скопировать в FAQ. -------------------- The truth comes from within ... Покойся с миром, Vit |
|||
|
||||
| podval |
|
|||
![]() Где я? Кто я? ![]() ![]() ![]() ![]() Профиль Группа: Экс. модератор Сообщений: 3094 Регистрация: 25.3.2002 Где: СПб Репутация: нет Всего: 62 |
Проще воспользоваться функциями ClientToScreen и ScreenToClient, они работают с аргументом TPoint
|
|||
|
||||
![]()
|
| Правила форума "Delphi: Общие вопросы" | |
|
|
Запрещается! 1. Публиковать ссылки на вскрытые компоненты 2. Обсуждать взлом компонентов и делиться вскрытыми компонентами
Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Snowy, MetalFan, bems, Poseidon, Rrader. |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | Delphi: Общие вопросы | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |