将图像从Finder拖到Swift2中的自定义NSView

时间:2015-08-04 15:20:15

标签: cocoa drag-and-drop swift2

我将NSView子类化为Dropzone,将其放入故事板并尝试将图像从Finder拖到视图中。 该应用程序显示PMPrintWindowController警告,不允许打印。我无法让它发挥作用。我只需要路径名并将NSImage从一个转换为另一个(而不是拖动)。

这是我的基本类,应该得到draged文件。 (我把它从NSImageiew子类条带下来到基本的我可以成像)

import Cocoa

class DropzoneView: NSView {

override func awakeFromNib() {
    // Add drag and drop support
    registerForDraggedTypes([NSFilenamesPboardType])
}

override func drawRect(dirtyRect: NSRect)  {
    super.drawRect(dirtyRect)
    NSColor.whiteColor().set()
    NSRectFill(dirtyRect)
}

override func draggingEntered(sender: NSDraggingInfo) -> NSDragOperation  {
    print("hello")
    return NSDragOperation.Copy
}

}

但是一旦图像进入视图边框,我就会收到此错误。

enter image description here (有史以来最好的AppIcon)

日志显示:

2015-08-04 17:14:36.319 mySecretNewApp[14712:498209]   __agent_connection_block_invoke_2: Connection error - Connection invalid
2015-08-04 17:14:36.357 mySecretNewApp[14712:498061] Could not find image named 'GenericPostscriptPrinter'.
2015-08-04 17:14:36.361 mySecretNewApp[14712:498061] Failed to connect (_appIconImage) outlet from (PMPrintWindowController) to (NSImageView): missing setter or instance variable

如何实现我的应用识别的图像的dropzone并将路径名返回给图像,或NSData?

0 个答案:

没有答案