Как я могу получить положение X, Y TWinControl (относительно экрана) - PullRequest
13 голосов
/ 14 ноября 2008

Я пытаюсь показать пользовательскую подсказку в TWinControl, но не могу понять, как получить его позицию.

Использование позиции 0,0 показывает подсказку в верхней части моего экрана (за пределами окна), поэтому я предполагаю, что это должна быть позиция элемента управления на экране.

Edit:

Я обнаружил свойство TControl ClientOrigin, которое возвращает то, что я ожидал, правильно ли использовать ClientOrigin.X и ClientOrigin.Y?

1 Ответ

38 голосов
/ 14 ноября 2008

TControl.ClientToScreen отображает координаты экрана для заданной точки в элементе управления.

lPoint := Panel1.ClientToScreen(Point(0,0));
Label1.Caption := Format('Screen: %d, %d', [lPoint.X, lPoint.Y]);
...