Главная страница
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.054 c
1-1121128966
Барс
2005-07-12 04:42
2005.07.31
Как изменить системное время windows


4-1117761498
_Seldon_
2005-06-03 05:18
2005.07.31
Низкоуровневый хук на клавиатуру


1-1121028718
Slicer
2005-07-11 00:51
2005.07.31
Как спрятать заголовок окна в taskbar е


10-1097086180
ИМХО
2004-10-06 22:09
2005.07.31
Набор закладок в вордовском документе


4-1117971408
Koan
2005-06-05 15:36
2005.07.31
Функция преобразования длинного пути в короткий