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

Вниз

Месторасположение объекта...   Найти похожие ветки 

 
Shira333 ©   (2004-10-11 17:23) [0]

Значит проблема такая... Мне нужно узнать расположение объекта в чужом окне, что бы поверх него создать свой. Ф-цию то я знаю GetWindowRect, но она выдает расположение всего окна, а на ф-ию GetClientRect выдет нули. Когда создается объект, то нужно указать расположение относительно клиентской части окна. Кто знает как узнать расположение уже существующего объекта относительно клиентской части окна???


 
Alex870   (2004-10-11 19:48) [1]

А если не секрет - что за объект и как применяешь GetClientRect?


 
Shira333 ©   (2004-10-12 17:14) [2]

Объект - EDIT. А применить пытался так:
h1: HWND; //Окно
h2: HWND; //Эдит
r1, r2: TRect;
x, y: Integer; //Координаты нового объекта в оконной СО
...
GetClientRect(h1, r1);
GetWindowRect(h2, r2);
x:=r2.left-r1.left;
y:=r2.top-r1.top


 
Alex870   (2004-10-13 23:05) [3]

Я понял, что объект - это полноценное окно с HWND, только почему r1 получается с помощью GetClientRect?
Because client coordinates are relative to the upper-left corner of a window"s client area, the coordinates of the upper-left corner are (0,0).
Если тебе нужно создавать свой объект поверх чужого - получай его координаты (GetWindowRect) и создавай - ведь они будут мировыми, ну если очень хочешь, то используй ScreenToClient, только я не понял зачем это: x:=r2.left-r1.left;y:=r2.top-r1.top;



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

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

Наверх




Память: 0.47 MB
Время: 0.045 c
14-1099975942
YurikGL
2004-11-09 07:52
2004.11.28
Посмотреть!!!


3-1098737306
Sulimxar
2004-10-26 00:48
2004.11.28
DevExpress для Delphi 7


3-1098990128
Vova
2004-10-28 23:02
2004.11.28
Query1.FieldCount всегда возвращает одно значение


1-1100660988
Bechard
2004-11-17 06:09
2004.11.28
RTL update 2 for Delphi 6 Ent


4-1097740755
Виктор
2004-10-14 11:59
2004.11.28
Нарушение доступа по адресу...