Использование делегата Какао в приложении Carbon Objective c ++ - PullRequest
1 голос
/ 22 января 2011

Я надеюсь, что кто-то сможет помочь мне, так как эта проблема убивает мою производительность. Одна неделя, даже если я новичок в разработке для Mac.

У меня есть приложение Carbon, в котором я хочуЧтобы добавить функцию: Получить путь к файлу, который я дважды щелкнул в поисковике.

Я

  • изменил проект, чтобы разрешить вызовы Objective C.
  • настроить объект делегата и назначить его NSApp
  • реализовано - (BOOL)application:(NSApplication *)app openFile:(NSString *)filename в делегате.

проблема: метод делегата НЕ срабатывает при двойном щелчке файла в искателе.

Я уверен, что мне чего-то не хватает (проблема с памятью / областью? Проблема с циклом событий (сейчас используется RunApplicationEventLoop)

Если у кого-нибудь есть подсказка, я буду рад ее услышать.

Спасибо всем.

1 Ответ

1 голос
/ 22 января 2011

В приложении Carbon NSApp будет равно нулю.NSApp определяется во время функции NSApplicationMain, которая вызывается для запуска приложения Какао.В приложении Carbon необходимо использовать методы Carbon, чтобы определить, когда открывается приложение.Установите обработчик событий и прослушайте яблочное событие odoc.

...