Форум: "Основная";
Текущий архив: 2005.12.04;
Скачать: [xml.tar.bz2];
ВнизЭмкляция щелчка мыши Найти похожие ветки
← →
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;
Скачать: [xml.tar.bz2];
Память: 0.44 MB
Время: 0.049 c