如何以编程方式确定MacOS中是否启用了"全键盘访问"模式?

Mir*_*ira 6 cocoa accessibility

在"键盘"偏好设置面板中启用或禁用完全键盘访问模式 - 它在此处引用:

有效地继承标准Cocoa控件

和这里:

禁用应用程序的完全键盘访问

但我在网上没有找到如何在我的应用程序中确定是否启用了全键盘访问.我正在编写一个自定义无线电控件,并且如果启用了全键盘访问,则希望允许对其进行制表.

dan*_*ass 8

在Mac OS X 10.6或更高版本中: - [NSApp isFullKeyboardAccessEnabled].


Rob*_*ier 5

我知道这是没有证件的.它存储AppleKeyboardUIModeNSGlobalDomain:

defaults read -g AppleKeyboardUIMode
Run Code Online (Sandbox Code Playgroud)

这是一个位域,但我从来没有见过它的文档."全键盘访问"似乎切换位1(值= 2).

简而言之,你应该能够从中获取NSUserDefaults并对其进行位掩码以找到答案,但它可能会改变.

  • 谢谢!那太可怕了. (2认同)