Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Основная";
Текущий архив: 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.56 MB
Время: 0.021 c
1-28477
Kost
2001-12-22 10:02
2002.01.10
Как поворвчивать bitmap


7-28545
kostya
2001-09-27 17:37
2002.01.10
Как реиницилизировать модем при использовании Varian Async.


3-28444
Kozhanov
2001-12-07 12:57
2002.01.10
Как


1-28502
Серега
2001-12-16 19:01
2002.01.10
I/O Error 103 и подавление системного сообщения.


1-28454
Imelda
2001-12-21 17:00
2002.01.10
Как «сжать» эти строки так чтобы они шли по порядку?





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский