
02.04.2009, 13:00
|
 |
Illuminati
|
|
Регистрация: 06.03.2008
Адрес: Крым, г. Симферополь
Сообщения: 348
Репутация: 8808
|
|
Можно. Только нужно знать абсолютные координаты кнопки.
Вот код:
Код:
procedure mouseclick(pt: tpoint; backcursor: boolean = true);
// Переводим экранные координаты к принятым в mouse_event
function screentoabsolute(const pt: tpoint): tpoint;
begin
result.x := round(pt.x * 65535 / screen.width);
result.y := round(pt.y * 65535 / screen.height);
end;
var
oldpt: tpoint;
begin
if backcursor then
oldpt := screentoabsolute(mouse.cursorpos);
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;
__________________
Хорошо написанная программа не требует документации
ICQ 9-184-668.
|