Главная страница
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.06 c
1-1163576005
net_daemon
2006-11-15 10:33
2007.01.07
Алгоритмический вопрос по комбинаторике


15-1166455220
dr_craigan
2006-12-18 18:20
2007.01.07
открытие картинок с помощью ...


15-1166392740
AntiUser
2006-12-18 00:59
2007.01.07
Если бы все поумнели...


15-1166291297
Cyrax
2006-12-16 20:48
2007.01.07
ВКТ-7


2-1166364562
Max_2006
2006-12-17 17:09
2007.01.07
работа с SYSTEMTIME, FILETIME, прибавить любой промежуток времени