Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Delphi программирование > Общие вопросы Delphi
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 30.11.2009, 01:03   #1
LENINGOLD
Новичок
Джуниор
 
Регистрация: 30.11.2009
Сообщений: 2
По умолчанию Программное перемещение указателя мыши по экрану.

Возможно ли в Delphi написать программу, которая смогла бы перемещать мышь по экрану и кликать мышкой????
Например переместить мышь в нижний левый угол экрана и открыть меню пуск!
LENINGOLD вне форума Ответить с цитированием
Старый 30.11.2009, 01:29   #2
eoln
Старожил
 
Аватар для eoln
 
Регистрация: 26.04.2008
Сообщений: 2,689
По умолчанию

Так перемещаем и кликаем (X, Y - координаты точки)
Код:
  setcursorpos(X,Y);
  Mouse_Event(MOUSEEVENTF_ABSOLUTE or MOUSEEVENTF_LEFTDOWN, X, Y, 0, 0);
  Application.ProcessMessages;
  Mouse_Event(MOUSEEVENTF_ABSOLUTE or MOUSEEVENTF_LEFTUP, X, Y, 0, 0);
А пуск так открывать лучше
Код:
  SendMessage(Self.Handle, WM_SYSCOMMAND, SC_TASKLIST, 0);
eoln вне форума Ответить с цитированием
Старый 30.11.2009, 01:30   #3
Neeter
Форумчанин
 
Аватар для Neeter
 
Регистрация: 22.02.2009
Сообщений: 875
По умолчанию

Перемещение курсора:
Код:
function SetCursorPos(X, Y: integer): boolean;
Имитация клика мышкой:
Код:
mouse_event(MOUSEEVENTF_LEFTDOWN,X,Y,0,0); //нажать левой кнопки
mouse_event(MOUSEEVENTF_LEFTUP,X,Y,0,0); //отпустить левую кнопку
Вот код открытия пуска:
Код:
procedure TForm1.Button1Click(Sender: TObject);
begin
 SetCursorPos(0, Screen.Height); //Переводим курсор в левый нижний угол
 Sleep(100); //Задержка нужна для того, чтобы панель задач появилась из-за экрана (если она задвигается автоматически)
 //И клик мышью
 mouse_event(MOUSEEVENTF_LEFTDOWN,0,Screen.Height,0,0);
 mouse_event(MOUSEEVENTF_LEFTUP,0,Screen.Height,0,0);
end;
Чтобы обнаруживать ошибки, программист должен иметь ум, которому доставляет удовольствие находить изъяны там, где, казалось, царят красота и совершенство.
Neeter вне форума Ответить с цитированием
Старый 30.11.2009, 01:58   #4
LENINGOLD
Новичок
Джуниор
 
Регистрация: 30.11.2009
Сообщений: 2
По умолчанию

Спасибо за ответы!!
Помогло!))
LENINGOLD вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Координаты указателя мыши Артэс Win Api 9 15.06.2008 16:20
Перемещение указателя на следующую запись Avalonix БД в Delphi 6 31.05.2008 11:13
Помогите! Как реализовать перемещение панель GroupControl с помощью мыши. Slavon Общие вопросы .NET 0 14.05.2008 13:49
Положение указателя мыши Viteef Общие вопросы Delphi 4 26.06.2007 15:59