我正在尝试编写一个应用程序,允许用户从Finder中拖动文件并将其拖放到 NSStatusItem
上 . 到目前为止,我已经创建了一个实现拖放界面的自定义视图 . 当我将此视图添加为 NSWindow
的子视图时,一切正常 - 鼠标光标提供适当的反馈,当删除时,我的代码被执行 .
但是,当我使用与 NSStatusItem's
视图相同的视图时,它的行为不正确 . 鼠标光标提供适当的反馈,表明文件可以被删除,但是当我删除文件时,我的丢弃代码永远不会被执行 .
我需要做些什么特别的事情才能使用 NSStatusItem
来拖放?
2 回答
我终于开始测试这个了,它运行得很好,所以你的代码肯定有问题 .
这是一个允许拖动的自定义视图:
以下是您创建状态项的方法:
自Yosemite以来,在
NSStatusItem
上设置视图的方法已被弃用,但幸运的是,在NSStatusItem
上使用新的NSStatusItemButton
属性有一个更好的方法:}
请注意,
button
属性仅在10.10开始时可用,如果您支持10.9或更低的小牛,您可能必须保留旧的解决方案 .