Модераторы: Poseidon, Snowy, bems, MetalFan
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Работа с курсором мыши 
:(
    Опции темы
kwotz
Дата 14.4.2007, 17:16 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Awaiting Authorisation
Сообщений: 25
Регистрация: 6.1.2007
Где: Майкоп

Репутация: нет
Всего: нет



Вот хотелось бы сделать так, чтобы через некоторое время курсор переехал на определенные координаты (х,у) экрана и сделал клик. Что нужно для этого? Толкните меня в правильное русло!
PM MAIL   Вверх
Alexeis
Дата 14.4.2007, 19:51 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Амеба
Group Icon


Профиль
Группа: Админ
Сообщений: 11743
Регистрация: 12.10.2005
Где: Зеленоград

Репутация: 109
Всего: 459



Переехать можно так Mouse.CursorPos := POINT(20, 20);

Добавлено через 9 минут и 57 секунд
Потом можно поискать окно которое находиться под ним при помощи API функции
Код

HWND WindowFromPoint(          POINT Point
);

И послать ему сообщения WM_LBUTTONDOWN и WM_LBUTTONUP


--------------------
Vit вечная память.

Обсуждение действий администрации форума производятся только в этом форуме

гениальность идеи состоит в том, что ее невозможно придумать
PM ICQ Skype   Вверх
Letov
Дата 24.4.2007, 22:01 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 321
Регистрация: 22.2.2007
Где: Санкт-Петербург

Репутация: нет
Всего: 4



Время задай в Timer. В событие OnTimer запиши нужный код.

Следующий пример показывает, как "подтолкнуть мышку" без вмешательства пользователя.
Код

procedure TForm1.Button1Click(Sender: TObject);

var
pt : TPoint;
begin
  Application.ProcessMessages;
  Screen.Cursor := CrHourglass;
  GetCursorPos(pt);
  SetCursorPos(pt.x + 1, pt.y + 1);
  Application.ProcessMessages;
  SetCursorPos(pt.x - 1, pt.y - 1);
end;



Взято из http://forum.sources.ru
Код

uses
Windows; 

procedure PlaceMyMouse(Sender: TForm; X, Y: word);
var
MyPoint: TPoint;
begin
MyPoint := Sender.ClientToScreen(Point(X, Y));
SetCursorPos(MyPoint.X, MyPoint.Y);
end;


http://delphiworld.narod.ru/
DelphiWorld 6.0

Как имитировать нажатие левой кнопки мыши?
Код

mouse_event(MOUSEEVENTF_LEFTDOWN,0,0,0,0);
Application.ProcessMessages;
mouse_event(MOUSEEVENTF_LEFTUP,0,0,0,0); 


Автор ответа: Song, Spawn
©Drkb::01581
Взято с Vingrad.ru http://forum.vingrad.ru

 



Это сообщение отредактировал(а) Letov - 24.4.2007, 22:03


--------------------
Не бывает плохих языков программирования. Бывают плохие программисты...

PM MAIL   Вверх
Farmazon
Дата 24.4.2007, 22:31 (ссылка) |   (голосов:1) Загрузка ... Загрузка ... Быстрая цитата Цитата


Разработчик
**


Профиль
Группа: Участник
Сообщений: 265
Регистрация: 7.7.2006

Репутация: нет
Всего: 5



Ещё можно, двигать мышу и зминять её настройки используя переменную Mouse...






--------------------
Таково моё общее мнение.
PM MAIL WWW   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "Delphi: Общие вопросы"
SnowyMetalFan
bemsPoseidon
Rrader

Запрещается!

1. Публиковать ссылки на вскрытые компоненты

2. Обсуждать взлом компонентов и делиться вскрытыми компонентами

  • Литературу по Дельфи обсуждаем здесь
  • Действия модераторов можно обсудить здесь
  • С просьбами о написании курсовой, реферата и т.п. обращаться сюда
  • Вопросы по реализации алгоритмов рассматриваются здесь
  • 90% ответов на свои вопросы можно найти в DRKB (Delphi Russian Knowledge Base) - крупнейшем в рунете сборнике материалов по Дельфи


Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Snowy, MetalFan, bems, Poseidon, Rrader.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Delphi: Общие вопросы | Следующая тема »


 




[ Время генерации скрипта: 0.0799 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.