NSView 在拖动窗口时遇到拖动事件



在我的应用程序中,有一个奇怪的问题,即当窗口在屏幕上拖动时,自定义NSView会收到转发的鼠标拖动事件,通常是通过其工具栏。

从堆栈跟踪来看,Cocoa 框架似乎是自己完成的。
(可能是通常的响应链)

现在我正在尝试检测拖动事件是否来自我的视图或其他地方 - 是否有任何强大的方法可以做到这一点?

我找不到一个公共成员来存储鼠标按下发生的视图(尽管NSEvent似乎将其存储在内部私有字段中)。

或者任何将窗口配置为不转发拖动消息的选项?

任何提示赞赏!

NSEvent 具有locationInWindow,它将事件发生的位置作为NSPoint返回。与NSPointInRect一起,您可以检查该位置是否在窗框或类似窗口中。

相关内容

  • 没有找到相关文章

最新更新