Форум: "Основная";
Текущий архив: 2002.01.10;
Скачать: [xml.tar.bz2];
ВнизКак перевести координаты мыши в координаты объекта? Найти похожие ветки
← →
Aleksandr (2001-12-21 12:53) [0]Что-то я отупел уже... Мне при событии OnMouseDown надо X и Y перевести в координаты своего графического объекта, который находится на панели, которая находится на панели и т.д. Как можно автоматизировать этот процесс? Я так понимаю, координаты мыши ведут отсчет от начала формы?
← →
Alx2 (2001-12-21 12:58) [1]см. ClientToScreen
← →
Aleksandr (2001-12-21 13:01) [2]Пробовал... Не совпадает... К примеру, высота нажатия от начала координат объекта=47, а ScreenToClient возвращает 77.
← →
Lusha (2001-12-21 13:02) [3](Задумчиво так)
А есть еще системные константы определяющие величину заголовка окна, и borders.
← →
Alx2 (2001-12-21 13:06) [4]Если бегаем мышью на Form1, то
procedure TForm1.RxDBGrid1MouseMove(Sender: TObject; Shift: TShiftState; X,
Y: Integer);
Var P : TPoint;
begin
P := MyGraphicsObject.ScreenToClient(ClientToScreen(point(x,y)));
end;
Иначе ClientToScreen вызываем объекта Sender.
(Именно этот пример не проверял, правда. "Но истина где-то рядом" (c) агент Малдер)
← →
Lusha (2001-12-21 13:21) [5]Координаты мыши ведут отсчет от начала клиентской области окна. Поэтому иногда и приходится вспоминать GetSystemMetrics. Правда, если честно, я так и не понял, чего Вы хотите в итоге... (
P.S. Ну, расслабленный я сегодня. Уж, извините.
← →
Aleksandr (2001-12-21 13:24) [6]Сорри, вопрос закрыт... Обработчик не инхеритил... Всем спасибо.
Страницы: 1 вся ветка
Форум: "Основная";
Текущий архив: 2002.01.10;
Скачать: [xml.tar.bz2];
Память: 0.45 MB
Время: 0.002 c