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

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

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

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 20.12.2010, 12:55   #1
delfi1979
 
Регистрация: 20.12.2010
Сообщений: 4
По умолчанию Как в делфи дать команду контролеру мыши?

Как в делфи дать команду контролеру мыши?
Если можно пример.
Для чего это нужна: есть прога, в которой есть 3 кнопки, которые надо нажимать каждые 30 минут, переместить в точку X.Y сделать клик, что может проще взять любой эмулятор мыши или из под делфи написать. Я тоже так думал, но есть большое НО.
Прога устроена таким способом, что не это все не срабатывает
Когда я вручную вожу мышкой, когда курсор попадает в область кнопки она начинает подсвечиваться,
Если же я использую эмулятор мыши и перемещаюсь в точку области кнопки, кнопка не светиться и клик не срабатывает.
Думал устроена прога, что она отлавливает курсор мыши, и когда я пересекаю границу кнопки, начинает светиться и потом уже обрабатывается мой клик мыши
Написал из делфи, типа чтобы мышь плавна переместилась вверх и пересекла область кнопки,
пример
var
pt : TPoint;
begin

GetCursorPos(pt);

SetCursorPos(pt.x, pt.y - 1);

end;

при попадании курсора в область кнопки снова кнопка не подсвечивается, а значит клик и не сработает.

Кто подскажет идеи, как устроена может эта кнопка, получиться ли если эмулировать движение мыши путем записи в порт или контролер, помогите плиз
delfi1979 вне форума Ответить с цитированием
Старый 20.12.2010, 13:00   #2
raxp
Старожил
 
Регистрация: 29.09.2009
Сообщений: 9,713
По умолчанию

...не нужно давать команду контроллеру почитайте про протокол обмена мышки, к примеру в нашем журнале ...попробуйте посылать нажатия кнопке через сообщения, отлавливая ее хэндл ...а вообще нужно бы для начала убедиться, что это за элемент на самом деле.
Разработки и научно-технические публикации :: Видеоблог :: Твиттер
Radar systems engineer & Software developer of industrial automation
raxp вне форума Ответить с цитированием
Старый 20.12.2010, 18:51   #3
delfi1979
 
Регистрация: 20.12.2010
Сообщений: 4
По умолчанию

А пример можно, проще и быстрее будет
Например сместиться в точку 100 100, нажать левую кнопку мыши и отпустить
А то чуть чуть не понимаю
Var
h :THandle;
Begin

h:= FindWindow(nil,'Form1');
sendMessage(h , WM_MOUSEMOVE , 0, 100 + 100 shl 16);
не перемещает курсов мыши(
кстати ты прав это не кнопка, нет хэндл, но обработчик есть
delfi1979 вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
как послать команду нажатия кнопки мыши Olejik Общие вопросы C/C++ 8 11.02.2012 21:02
как листу дать имя owl-ka Microsoft Office Excel 8 25.11.2008 21:29
Как в делфи опрашивать координаты мыши??? EschE Помощь студентам 9 17.11.2007 13:17
TWebBrowser-как перехватить команду скрипта для закрытия окна и не дать ему закрыться Вовик Компоненты Delphi 5 03.10.2007 12:17
Как узнать в Делфи координаты в котором находится курсор мыши? SVS Win Api 3 08.02.2007 13:34