Получить координаты указанного текста на текущем экране - PullRequest
1 голос
/ 22 июня 2011

все.Я хочу написать инструмент для автоматизации графического интерфейса, который может найти текстовую метку на текущем экране (абсолютное местоположение), чтобы я мог водить курсором мыши, чтобы нажать на него.Подпись нужной функции должна выглядеть так:

Point GetTextCoordination (текст строки)

У кого-нибудь есть идеи, как это реализовать?Я не хочу использовать технологию оптического распознавания текста или компьютерного зрения из-за проблем с производительностью.Является ли перехват функции TextOut win32api осуществимым способом?

Ответы [ 2 ]

0 голосов
/ 23 июня 2011

Вы хотите использовать инструментарий автоматизации с графическим интерфейсом, такой как библиотека UIAutomation или белая библиотека (которая является оболочкой для UIAutomation), или AutoIT.

(В качестве альтернативы есть коммерческие инструменты для этого - если вы хотите настроить программу автоматизации тестирования, то вам лучше воспользоваться одним из коммерческих инструментов, поскольку они имеют множество функций, которые делают этот вид все проще.)

0 голосов
/ 22 июня 2011

Я не думаю, что перехват функции TextOut является возможным решением (хотя, безусловно, возможно). У вас нет никаких гарантий, что текст, который вы хотите найти, был нарисован с помощью этой функции. Попытка использовать OCR была бы аналогично сопряжена с трудностями.

Я подозреваю, что для ваших целей было бы достаточно перечислить окна целевого приложения (используя GetWindow и связанные функции) и исследовать текст каждого (используя GetWindowText), чтобы найти то, что вам нужно. Это даст вам дескриптор окна, и вы сможете получить границы окна или отправить ему сообщение напрямую.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...