Главная страница
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.044 c
2-1166368025
allrussia
2006-12-17 18:07
2007.01.07
Не пойму логику ошибки: Constant expression violates subrange...


4-1155966925
zXm
2006-08-19 09:55
2007.01.07
Перехват API методом исправления таблиц импорта.


2-1166459476
gosha73
2006-12-18 19:31
2007.01.07
Непонимаю в чем разница (указатель на запись)


2-1165418062
crasher
2006-12-06 18:14
2007.01.07
панель задач своими руками


15-1166448048
Иксик
2006-12-18 16:20
2007.01.07
Поздравляю data :)