Главная страница
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.029 c
4-1116411956
lehich
2005-05-18 14:25
2005.07.31
кодировка и clipboard


6-1114320808
X-Disa
2005-04-24 09:33
2005.07.31
TIdHTTP - прервать получение


4-1117711688
Альфа
2005-06-02 15:28
2005.07.31
полупрозрачная надпись


1-1120919808
Igor_thief
2005-07-09 18:36
2005.07.31
Как изменить ширину полосы прокрутки в ListBox?


14-1120816424
DiamondShark
2005-07-08 13:53
2005.07.31
Тяжёлое детство, деревянные игрушки