gpt4 book ai didi

cocoa - 光标位于 sibling 上方

转载 作者:行者123 更新时间:2023-12-03 17:20:54 29 4
gpt4 key购买 nike

假设有一个具有非常简单的 UI 层次结构的窗口,它只有两个同级: NSTextView 和 NSButton,并且它们确实重叠。

我的问题是,为什么光标悬停在按钮上时会有所不同,具体取决于其下方是否有 TextView ?为什么文本光标通过按钮“泄漏”?如何使按钮保留其光标,无论其下方是什么?

我以为我可以创建一个 NSView,将按钮放在其中并以某种方式使 View “不透明”,但我没有走得太远......

我想做的是有一个按钮“ float ”在 TextView 之上,并且仍然显示正确的(正常)光标。

enter image description here

enter image description here

最佳答案

https://developer.apple.com/library/mac/documentation/Cocoa/Conceptual/CocoaViewsGuide/WorkingWithAViewHierarchy/WorkingWithAViewHierarchy.html

For performance reasons, Cocoa does not enforce clipping among sibling views or guarantee correct invalidation and drawing behavior when sibling views overlap. If you want a view to be drawn in front of another view, you should make the front view a subview (or descendant) of the rear view.

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

https://developer.apple.com/library/mac/documentation/Cocoa/Conceptual/EventOverview/TrackingAreaObjects/TrackingAreaObjects.html

关于cocoa - 光标位于 sibling 上方,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27805953/

29 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com