NSStatusItem 沿状态栏重新排序
NSStatusItem reordering along Status Bar
我正在尝试为 Mac OS X 向我的状态栏应用程序添加一项功能。我希望能够沿着栏移动我的项目,就像您可以为本机 OS 工具,例如蓝牙或 WiFi 图标。
干杯
不幸的是,没有 'good' 方法可以做到这一点,但是您可以检查这个问题以找到可以做到这一点的技巧:
How to drag NSStatusItems
您要查找的是 NSMenuExtra
而不是 NSMenuItem
。
Apple 使用 NSMenuExtra
作为系统菜单图标,包括 Wi-Fi 和蓝牙。虽然它看起来与常规的 NSMenuItem
相似,但 NSMenuExtra
有一些特殊的功能,特别是在重新启动后保持它们的相对顺序,以及用户可以通过命令拖动。
不幸的是,NSMenuExtra
完全没有记录,因此如果您的目标是 Mac App Store,最好坚持使用标准 NSMenuItem
。否则,有一堆关于如何创建 NSMenuExtra
的教程。例如,这里有两个:
macOS Sierra 更新:Apple 改进NSStatusItem
。现在可以通过 ⌘ 拖动重新排序项目。这适用于所有 Apple 的菜单项和所有第三方应用程序。
几乎所有您可能想使用 NSMenuExtra
的原因现在都已删除,这很棒。所以,现在的答案是只使用 NSStatusItem
。无需进一步操作。
我正在尝试为 Mac OS X 向我的状态栏应用程序添加一项功能。我希望能够沿着栏移动我的项目,就像您可以为本机 OS 工具,例如蓝牙或 WiFi 图标。
干杯
不幸的是,没有 'good' 方法可以做到这一点,但是您可以检查这个问题以找到可以做到这一点的技巧:
How to drag NSStatusItems
您要查找的是 NSMenuExtra
而不是 NSMenuItem
。
Apple 使用 NSMenuExtra
作为系统菜单图标,包括 Wi-Fi 和蓝牙。虽然它看起来与常规的 NSMenuItem
相似,但 NSMenuExtra
有一些特殊的功能,特别是在重新启动后保持它们的相对顺序,以及用户可以通过命令拖动。
不幸的是,NSMenuExtra
完全没有记录,因此如果您的目标是 Mac App Store,最好坚持使用标准 NSMenuItem
。否则,有一堆关于如何创建 NSMenuExtra
的教程。例如,这里有两个:
macOS Sierra 更新:Apple 改进NSStatusItem
。现在可以通过 ⌘ 拖动重新排序项目。这适用于所有 Apple 的菜单项和所有第三方应用程序。
几乎所有您可能想使用 NSMenuExtra
的原因现在都已删除,这很棒。所以,现在的答案是只使用 NSStatusItem
。无需进一步操作。