Cocoa 光标位于兄弟姐妹上方

Cocoa 光标位于兄弟姐妹上方,cocoa,nstextview,appkit,nsbutton,Cocoa,Nstextview,Appkit,Nsbutton,假设有一个窗口有一个非常简单的UI层次结构,它只有两个兄弟:NSTextView和NSButton,它们确实重叠 我的问题是,为什么光标悬停在按钮上时会有所不同,这取决于它下面是否有文本视图?为什么文本光标通过按钮“泄漏”?如何使按钮保持其光标,而不管其下方是什么 我想我可以创建一个NSView,将按钮放在里面,然后以某种方式使视图“不透明”,但我没有走得太远 我想做的是在文本视图上方有一个“浮动”的按钮,并且仍然显示正确的(正常的)光标 出于性能原因,Cocoa不会在兄弟姐妹之间强制执行剪

假设有一个窗口有一个非常简单的UI层次结构,它只有两个兄弟:NSTextView和NSButton,它们确实重叠

我的问题是,为什么光标悬停在按钮上时会有所不同,这取决于它下面是否有文本视图?为什么文本光标通过按钮“泄漏”?如何使按钮保持其光标,而不管其下方是什么

我想我可以创建一个NSView,将按钮放在里面,然后以某种方式使视图“不透明”,但我没有走得太远

我想做的是在文本视图上方有一个“浮动”的按钮,并且仍然显示正确的(正常的)光标

出于性能原因,Cocoa不会在兄弟姐妹之间强制执行剪裁 查看或保证在以下情况下正确失效和绘图行为: 兄弟视图重叠。如果希望在前面绘制视图 在另一个视图中,应使前视图成为子视图(或子视图) 后视图的一部分

您可以使用NSTrackingArea手动更新光标:


我以为NSButton有自己的跟踪区域。在任何情况下,我都试图
添加跟踪区域:
,但它也不起作用。。。