我有一个窗口(NSWindow),上面有一系列 View 。这些 View 之一接受 mouseMove 事件。我希望能够用鼠标在两个不同 View 之间连接一条线。因此,我所做的是创建一个覆盖整个窗口的更大 View ,并在该 View 中绘制线条。这工作得很好。
问题是,如果我允许较大的重叠 View 接受 mouseMove 事件,以便线条跟随光标,那么我的可见 View 将停止接收 mouseMove 事件。这是一个问题,因为我希望当鼠标悬停在某些对象上时,某些对象在底层 View 上“点亮”,并且我在该 View 的 mouseMove 方法中执行此操作。
如何在不可见的重叠 View 和下面的可见 View 中调用 mouseMove 方法?
最佳答案
检查您使用哪些选项来初始化 NSTrackingArea... 如果我没记错的话,无论您是否是第一响应者,您都应该能够使用 NSTrackingActiveAlways 并获取鼠标事件。如果您的 View 堆叠起来并不重要,只要它们注册自己的跟踪区域,它们就应该接收事件...
关于macos - 响应堆叠 View 中的 mouseMove 事件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8138801/