Как прочитать содержимое текстового поля другого приложения в OS X? - PullRequest
0 голосов
/ 07 декабря 2009

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

Есть ли способ получить доступ к содержимому окна / элемента управления (меня интересует текст текстового поля) в OS X? Что-то вроде GetDlgItemText () в Windows, где я просто передаю глобальный дескриптор элемента управления и получаю текст элемента управления.

Кто-нибудь из вас может дать мне несколько ключевых слов для Google? :)

Ответы [ 3 ]

1 голос
/ 07 декабря 2009

Я бы начал с Applescript

0 голосов
/ 08 декабря 2009

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

Забудьте о текстовом поле - сопутствующему приложению не нужно знать об этом или заботиться о нем. Попросите основное приложение передать фрагмент текста сопутствующему приложению или приложение-сопроводитель запросит его у основного приложения. Для этого можно использовать Распределенные объекты .

Что-то вроде GetDlgItemText () в Windows, где я просто передаю глобальный дескриптор элемента управления и получаю текст элемента управления.

В Mac OS X отсутствует глобальный дескриптор элемента управления в процессе. Самым близким будет Accessibility, но есть гораздо более простые способы сделать это, не требуя включения вспомогательных устройств. DO является одним из них.

0 голосов
/ 08 декабря 2009

Пример проекта UIElementInspector является отличной отправной точкой для использования специальных API .

Еще одна хорошая вещь для Google - это «Сценарии интерфейса AppleScript»

Если вы используете AppleScript из Какао на 10.5 или более поздней версии, Мост сценариев может сделать вашу жизнь проще.

Удачи!

...