Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2007.01.07;
Скачать: CL | DM;

Вниз

определить координаты мыши относительно Image   Найти похожие ветки 

 
jonson35   (2006-12-15 22:15) [0]

Здравствуйте, подскажите как определить координаты курсора мыши относительно компонента Image
так определется относительно области "экрана, а надо за координату 0,0 взять координату не экрана а координату Image

procedure TForm1.Image1Click(Sender: TObject);
var
 foo: TPoint;
begin
 GetCursorPos(foo);
 Form1.Caption:= IntToStr(foo.X) + " ," + IntToStr( foo.Y );
end;


 
Джо ©   (2006-12-15 22:20) [1]

Самое простое, использовать событие OnImageMouseDown. В параметры передаются клиентские X,Y.
Но можно и перевести. Для это есть метод ScreenToClient.


 
Джо ©   (2006-12-15 22:20) [2]

> OnImageMouseDown

OnMouseDown.


 
RASkov   (2006-12-15 23:35) [3]

procedure TForm1.Image1Click(Sender: TObject);
var
foo: TPoint;
begin
 GetCursorPos(foo);
 foo:=Image1.ScreenToClient(foo);
 Form1.Caption:= IntToStr(foo.X) + " ," + IntToStr( foo.Y );
end;


 
RASkov   (2006-12-15 23:38) [4]

Кстати вариант предложенный в [1] - OnMouseDown, OnMouseUp может быть полезнее так как там еще учитываются такие параметры как
Button: TMouseButton; Shift: TShiftState;


 
Джо ©   (2006-12-15 23:39) [5]

> [4] RASkov   (15.12.06 23:38)
> Кстати вариант предложенный в [1] - OnMouseDown, OnMouseUp
> может быть полезнее так как там еще учитываются такие параметры
> как
> Button: TMouseButton; Shift: TShiftState;

В [1], кроме одного варианта есть и еще один, а именно с ScreenToClient, сплагиаченный в [3] :D


 
RASkov   (2006-12-15 23:50) [6]

> [5] Джо ©   (15.12.06 23:39)

> сплагиаченный в [3] :D

Прошу прощения:) в [3] я его (из [1]) просто подставил на всякий случай в код автора и усе :)



Страницы: 1 вся ветка

Текущий архив: 2007.01.07;
Скачать: CL | DM;

Наверх




Память: 0.48 MB
Время: 0.029 c
2-1166267115
minter
2006-12-16 14:05
2007.01.07
Праблема!


15-1166125050
xBaguMx
2006-12-14 22:37
2007.01.07
Требуется написать программу для фирмы


2-1166374385
Vladimir1984
2006-12-17 19:53
2007.01.07
Как отрыть файл BMP в виде цифровой таблице?


2-1166207234
Bolt
2006-12-15 21:27
2007.01.07
Как на форму программно добавить кнопку??


15-1166435526
Сатир
2006-12-18 12:52
2007.01.07
Problem “J” - Concurrency Simulator