我需要获取从 Finder 拖/放到我的应用程序中的所有文件的 URL。
我有一个在 10.6 上运行的 Cocoa 应用程序,它通过使用新的 10.6 NSPasteboard API 来处理粘贴板上的多个项目。我正在尝试将此应用程序向后移植到 10.5。在 10.5 上如何处理这个问题?
如果我执行如下操作,我只会获得第一个 URL:
NSArray *pasteTypes = [NSArray arrayWithObjects: NSURLPboardType, nil];
NSString *bestType = [pboard availableTypeFromArray:pasteTypes];
if (bestType != nil) {
NSURL *url = [NSURL URLFromPasteboard:pboard];
}
获取多个文件名很容易:(同时获取多个 URL 不是 http://lapcatsoftware.com/blog/2006/10/09/drag-and-drop-multiple-urls/与 10.5)
- 注册您的视图
NSFilenamesPboardType
- In
performDragOperation:
执行以下操作来获取文件路径数组:
NSPasteboard* pboard = [sender draggingPasteboard];
NSArray* filenames = [pboard propertyListForType:NSFilenamesPboardType];
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)