检测键盘在 macOS 上是否有 Globe 键

问题描述 投票:0回答:1

最近的 Apple 产品键盘上有地球仪 (🌐︎) 键。在 AppKit 级别,它实际上只是一个 Fn 键,其行为类似于

NSEvent.ModifierFlags.function
。但是有没有办法知道用户当前使用的键盘是有 Globe 键还是只有 fn 键呢?

系统似乎以某种方式知道这一点,因为菜单中的快捷键显示根据键盘而变化。仅当键盘实际有 Globe 键时才会显示 Globe 符号。否则,显示“fn”。

但是,到目前为止,我还没有找到在 AppKit/SwiftUI 世界中以编程方式检测它的方法。我想在我自己的视图中实现显示这些菜单命令的键盘快捷键。

swift macos cocoa swiftui appkit
1个回答
0
投票

我找到了一种使用私有 API 来检测它的方法

ApplicationServices.HIServices

HIS_XPC_GetGlobeKeyAvailability();

尽管如此,我只需要使用公共 API...

© www.soinside.com 2019 - 2024. All rights reserved.