在我的应用中,当窗口被拖动到屏幕上时,通常通过其工具栏,自定义NSView
接收转发的mouseDragged事件这是一个奇怪的问题。
从堆栈跟踪看来,Cocoa框架似乎是自己做的 (可能是通常的响应者链)
现在我正在尝试检测拖动事件是源自我的观点还是其他地方 - 有没有强有力的方法这样做?
我找不到一个公共成员来存储鼠标停止发生的视图(尽管NSEvent
似乎将其内部存储在私有字段中)。
或者配置窗口以不转发拖动邮件的任何选项可能?
任何提示都赞赏!
答案 0 :(得分:0)
NSEvent
有locationInWindow
,它会将事件发生的位置作为NSPoint
返回。与NSPointInRect
一起,您可以检查位置是否在您的窗框或类似物中。