1

单击某个按钮时,我会创建自定义 NSView,如果您在 NSView 之外单击,我想关闭此自定义视图。但似乎我无法在此自定义 NSView 中接收 mouseDown 事件。有人知道怎么装吗?非常感谢。

4

2 回答 2

1

我想分享另外两个与 NSEvent 方法不同的解决方案,它们没有沙盒限制。

一个覆盖窗口。它涉及更多的代码和一个很好的练习,可以学习窗口和视图的可能性。但值得学习和了解。

创建一个占据整个屏幕的无边框窗口。然后无边框窗口可以处理鼠标事件。

一个跟踪区域。这种方法类似

于 2013-09-30T10:09:01.090 回答
0

你想使用 NSEvent 全局事件监视器。然后您可能需要将鼠标 NSPoint 转换为您的视图坐标并使用函数 NSPointInRect 来查看它是否在内部。

于 2013-09-18T09:11:47.860 回答