在碳应用程序现代化的过程中,我想重写在Cocoa中处理AppleEvents,特别是因为我发现Carbon AEFunctions非常难看。
我找到了NSAppleEventDescriptor,但我对如何从AppleEvent *创建一个以便更容易访问其元素感到困惑。
答案 0 :(得分:2)
AppleEvent
是AERecord
,AEDescList
是AEDesc
。因此,您可以使用NSAppleEventDescriptor
创建-initWithAEDescNoCopy:
。
也就是说,如果您在Cocoa中编写Apple Event处理程序,那么您应该使用-[NSAppleEventManager setEventHandler:andSelector:forEventClass:andEventID:]
注册它们。然后,您的处理程序方法会收到一个NSAppleEventDescriptor
作为参数,您不必担心从AppleEvent
构建一个。