Как управлять указателем мыши вне нашего приложения

Я хочу управлять указателем мыши с помощью своего приложения и иметь возможность взаимодействовать с другими программами с помощью моей программы. Например, я хочу, чтобы мое приложение могло нажимать кнопку в другом приложении.

Как мне решить эту проблему? (Подойдет любой язык программирования, также если у вас есть какие-либо предложения, дайте мне знать)

Послесловие: я хочу сделать это в операционной системе Windows и хочу проверить свой графический интерфейс, чтобы увидеть, работает ли он в разных сценариях. Мне подойдет любой язык, так как он не является частью конечного продукта, но я предпочитаю один из этих языков (Python, Java, C# или MATLAB).

Спасибо


person Mark    schedule 27.04.2009    source источник
comment
хороший программный этикет диктует, что вы не должны контролировать курсор мыши...   -  person Mitch Wheat    schedule 27.04.2009
comment
Спасибо, я добавил дополнительную информацию к вопросу. Я делаю это в Windows.   -  person Mark    schedule 27.04.2009
comment
Вот один веб-сайт, который я нашел связанным, и он использует Delphi bitwisemag.com/copy/delphi/ delphi2.html   -  person Mark    schedule 28.04.2009


Ответы (2)


Есть много способов сделать это, и вы не упомянули никаких деталей вашего приложения (система, целевая цель и т. д.).

Если ваша цель — ручная автоматизация, я бы порекомендовал собрать быстрый скрипт AutoIt для Windows. http://www.autoitscript.com/autoit3/index.shtml

Если это не то, что вы ищете, пожалуйста, дайте более подробную информацию.

person pcorey    schedule 27.04.2009
comment
Спасибо, добавил еще немного информации. Я делаю это в окнах - person Mark; 27.04.2009

Ладно, это на самом деле зависит от операционной системы и работы с окнами. Но фраза, которую вы ищете, это «захват мыши».

Как предлагает @Mitch, если у вас нет действительно веских причин — например, приложения для тестирования графического интерфейса? — тогда хватать мышь и возиться с ней таким образом — очень дурной тон.

person Charlie Martin    schedule 27.04.2009
comment
Спасибо, я только что добавил больше информации к вопросу, я занимаюсь тестированием графического интерфейса, и этот код не является частью результатов. - person Mark; 27.04.2009
comment
И только для взаимодействия с другими приложениями есть гораздо лучшие методы, такие как создание подклассов (по крайней мере, в Windows). - person Calvin; 27.04.2009