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

Вниз

Абсолютные координаты компонента   Найти похожие ветки 

 
xroot   (2005-07-10 16:07) [0]

Компонент может находится на форме или на панели  расп. на форме. или на панели расп. на другой панели.
Как найти координаты компонента относительно экрана, а не формы илм его родителя (панель).


 
xgreen   (2005-07-10 16:39) [1]

ClientToScreen


 
xroot   (2005-07-10 17:50) [2]

Выдает не те координаты (не коорд текущего компонента)


FormMsg.Top :=  (Form.Components[i] as TWinControl).ClientToScreen((Form.Components[i] as TWinControl).ClientOrigin).Y;
FormMsg.Left := (Form.Components[i] as TWinControl).ClientToScreen((Form.Components[i] as TWinControl).ClientOrigin).X;


 
Anatoly Podgoretsky ©   (2005-07-10 18:15) [3]

xroot   (10.07.05 17:50) [2]
Такого за ним не замечено.


 
xroot   (2005-07-10 18:20) [4]

По идее, форма должна показываться прямо на текущем компоненте (верхний леый угол должен у них совпадать). Этого не происходит. Она вообще появляется 4ерте где.


 
begin...end ©   (2005-07-10 18:20) [5]

> xroot   (10.07.05 17:50) [2]

var
 P: TPoint;
begin
 P := (Form.Components[...] as TWinControl).ClientToScreen(Point(0, 0));
 ShowMessageFmt("Left: %d Top: %d", [P.X, P.Y])
end.


 
xgreen   (2005-07-10 21:44) [6]


> xroot   (10.07.05 17:50) [2]
> Выдает не те координаты (не коорд текущего компонента)


> xroot   (10.07.05 18:20) [4]
> По идее, форма должна показываться прямо на текущем компоненте
> (верхний леый угол должен у них совпадать). Этого не происходит.
> Она вообще появляется 4ерте где.


Хм. Ну так понятно: ClientToScreen превращает координаты компонента в экранные координаты. А если тебе необходимо компонент отобразить, к примеру, на другой форме, то воспользуйся вторым преобразованием ScreenToClient, но опять же орабти внимание на расположение этой формы на экране, иначе координаты могут оказаться за пределами формы.



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

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

Наверх




Память: 0.48 MB
Время: 0.025 c
14-1120721677
Магнум
2005-07-07 11:34
2005.07.31
Delphi 5 and Delphi 2005


10-1098423704
Patrick
2004-10-22 09:41
2005.07.31
Экспорт в Excel


1-1121367415
redlord
2005-07-14 22:56
2005.07.31
максимальная длинна пути к файлу


14-1120631965
stud
2005-07-06 10:39
2005.07.31
вопрос админам


6-1113822641
Gek1
2005-04-18 15:10
2005.07.31
Socket Error 10038