Macos 响应堆叠视图中的鼠标移动事件

Macos 响应堆叠视图中的鼠标移动事件,macos,cocoa,Macos,Cocoa,我有一个窗口(NSWindow),上面有一系列视图。其中一个视图接受mouseMove事件。我希望能够用鼠标连接两个不同视图之间的一条线。所以,我所做的,是创建一个覆盖整个窗口的大视图,我在这个视图中画出我的线。这个很好用 问题是,如果我允许较大的重叠视图接受mouseMove事件,因此该行跟随光标,那么我的可见视图将停止接收mouseMove事件。这是一个问题,因为当鼠标悬停在基础视图上时,我希望某些对象在其上“亮起”,而我是在该视图的mouseMove方法中这样做的 如何在下面的不可见重叠视

我有一个窗口(NSWindow),上面有一系列视图。其中一个视图接受mouseMove事件。我希望能够用鼠标连接两个不同视图之间的一条线。所以,我所做的,是创建一个覆盖整个窗口的大视图,我在这个视图中画出我的线。这个很好用

问题是,如果我允许较大的重叠视图接受mouseMove事件,因此该行跟随光标,那么我的可见视图将停止接收mouseMove事件。这是一个问题,因为当鼠标悬停在基础视图上时,我希望某些对象在其上“亮起”,而我是在该视图的mouseMove方法中这样做的


如何在下面的不可见重叠视图和可见视图中调用mouseMove方法?

您可以让重叠视图的mouseMove方法将mouseMove方法发送到基础视图。

检查您正在使用哪些选项初始化NSTrackingArea。。。 如果我没有记错的话,无论您是否是第一响应者,您都应该能够使用NSTrackingActiveAllways并获取鼠标事件。如果您的视图是堆叠的,这不重要,只要它们注册自己的跟踪区域,它们就应该接收事件


谢谢,这很有效!我只是通过[[[self window]windowController]myOtherView]mouseMoved:theEvent]访问我的另一个视图,现在两个视图都响应mouseMoved。