OSX - 如何判断光标是否可见

Aud*_*oGL 7 macos cursor osx-mavericks

我知道这个问题已经得到了回答:

检测光标是否隐藏在Mac OS X上

但此时,函数"CGCursorIsVisible"已被弃用.根据帮助文献,没有替代品.

https://developer.apple.com/library/mac/documentation/GraphicsImaging/Reference/Quartz_Services_Ref/DeprecationAppendix/AppendixADeprecatedAPI.html#//apple_ref/c/func/CGCursorIsVisible

使用隐藏和显示功能(CGDisplayHideCursor/CGDisplayShowCursor)时,不会返回对光标可见性的引用.虽然显示/隐藏计数器由quartz维护,但无法访问该值.

那么,我们如何确定光标是否可见?

Tho*_*yer 1

我遇到了同样的问题,但找不到该问题的有效答案。

我通过实现一个计数器来解决这个问题,当我的应用程序启动时,该计数器设置为 0。每次隐藏光标时我都会增加它,然后我可以在_counter != 0.

您的 Mac 似乎为每个应用程序都有一个自己的计数器...因此,如果您的应用程序不在前台并且它使用该[NSCursor hide]命令,那么当您的应用程序再次成为 keyWindow 时,它仍然可见,但会变得不可见。