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

Вниз

Эмкляция щелчка мыши   Найти похожие ветки 

 
maxXP ©   (2005-11-06 13:29) [0]

Подскажите как эмулировать щелчёк мыши.


 
jack128 ©   (2005-11-06 13:31) [1]

procedure MouseClick(Pt: TPoint; BackCursor: boolean = True);

 function ScreenToAbsolute(const Pt: TPoint): TPoint;
 begin
   Result.x := Round(Pt.x * 65535 / GetSystemMetrics(SM_CXSCREEN));
   Result.y := Round(Pt.y * 65535 / GetSystemMetrics(SM_CYSCREEN));
 end;

var
OldPt: TPoint;
begin
 if BackCursor then
 begin
   if GetCursorPos(OldPt) then
     OldPt := ScreenToAbsolute(OldPt)
   else
     raise Exception.Create("Не могу получить координаты курсора");
 end;
 Pt := ScreenToAbsolute(Pt);
 {Переместим курсор мыши}
 Mouse_Event(MOUSEEVENTF_ABSOLUTE or MOUSEEVENTF_MOVE, Pt.x, Pt.y, 0, 0);
 {Нажимаем левую кнопку мыши}
 Mouse_Event(MOUSEEVENTF_ABSOLUTE or MOUSEEVENTF_LEFTDOWN, Pt.x, Pt.y, 0, 0);
 {Отпускаем левую кнопки мыши}
 Mouse_Event(MOUSEEVENTF_ABSOLUTE or MOUSEEVENTF_LEFTUP, Pt.x, Pt.y, 0, 0);
 if BackCursor then
   {Перемещаем курсор мыши обратно}
   Mouse_Event(MOUSEEVENTF_ABSOLUTE or MOUSEEVENTF_MOVE, OldPt.x, OldPt.y, 0, 0);
end;



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

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

Наверх




Память: 0.46 MB
Время: 0.049 c
14-1131614974
ilya39
2005-11-10 12:29
2005.12.04
Аналог OpenDialog в VBA


2-1132206232
стрелка
2005-11-17 08:43
2005.12.04
Проблема с вызовом хранимки


2-1132165578
Ji
2005-11-16 21:26
2005.12.04
Хочу написать нечто наподобие прокси


14-1131908060
Wolfram
2005-11-13 21:54
2005.12.04
Как заставить Delphi выделять, а не просто подсвечивать текст?


2-1132240366
XSasha
2005-11-17 18:12
2005.12.04
Помогите за вознагрождение.