Получить заголовок переднего окна в карбоне - PullRequest
2 голосов
/ 03 марта 2010

Я пишу программу, которая бы сидела в фоновом режиме на OSX 10.6, слушала нажатия клавиш и записывала их, группируя их по заголовкам окон. (Нет, я не пишу вредоносное программное обеспечение. Мне не нужно, чтобы эта программа была хитрой, я просто хочу иметь сеть безопасности на случай, когда я набрал большое письмо и затем случайно обновил страницу (APPLE-R) вместо того, чтобы открывать новую вкладку (APPLE-T)) Я уже нашел пример Apple EventMonitorTest для кода захвата нажатия клавиш, теперь мне просто нужно найти заголовок «окна ключа».

Кто-нибудь знает, где я могу найти примеры для такого рода функций? Спасибо!

1 Ответ

4 голосов
/ 03 марта 2010

Пара возможностей:

  1. Вы можете использовать Accessibility API (хотя, конечно, имейте в виду, что 64-битный Carbon не поддерживает это)
  2. Вы можете использовать функции CGWindow , представленные в Leopard

Я подозреваю, что с первым вариантом будет проще это сделать, поскольку CGWindow API является несколько низкоуровневым и обрабатывает все окна (окна приложений, строки меню, значки панели инструментов и т. Д.) Более или менее одинаково.

...