问题标签 [nsstatusbar]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
121 浏览

swift - 如何从另一个文件更新 NSStausItem?

当用户在我的设置视图中单击按钮时,我想在状态栏中更新 NSStausItem 的 button.title 属性。但是,NSStatusItem 当前没有改变。

应用委托:

设置视图控制器:

当我运行应用程序时,StatusBar 会显示一个标题为“A title”的新 StatusItem。太好了,到目前为止。但是当我点击按钮时,唯一发生的事情是一个新的状态项在旧状态项旁边出现了很短的时间。旧的没有更新。有没有合适的解决方案?

谢谢你的帮助!

0 投票
1 回答
197 浏览

swift - 检测何时通过拖放删除了 NSStatusItem

可以将NSStatusItem's behaviour属性设置为removalAllowed( NSStatusItemBehaviorRemovalAllowed) 然后用户可以使用拖放从状态栏中删除项目。

从状态栏中删除 WiFi 状态项

示例:从状态栏中删除 WiFi 状态项

但是,我无法检测到状态栏何时被删除,因此我可以记住它并且不会在用户下次启动应用程序时显示它。没有委托或通知,并且该statusBar属性是只读的,因此我无法覆盖设置器。

任何想法?:)

0 投票
1 回答
576 浏览

swift - 在 macOS 上额外添加菜单栏

我正在尝试创建一个将在 macOS 上额外显示菜单栏的应用程序。

到目前为止,我使用了很多我在网上找到的代码,但是,虽然它们都可以编译,但没有一个真正显示菜单。

代码片段或多或少是这样的:

菜单上不显示任何内容。我需要启用什么才能使其显示菜单吗?我也尝试了图像,它也不起作用。

0 投票
1 回答
642 浏览

swiftui - How to create a NSMenu Instance with SwiftUI?

I have look made some search, however could not find any information. Question is pretty straight-forward. I don't know if it is possible, but, in this link they could create a NSMenu item via xib files. So I thought maybe it is possible to create NSMenu using SwiftUI as well.

0 投票
1 回答
215 浏览

swift - 单击 NSStatusItem 时如何赋予 NSPopover 焦点?

我正在使用 Swift 构建一个 macOS 菜单栏应用程序,当单击 ' 按钮时NSStatusItem,它会打开一个。NSPopoverNSStatusItem

我怎样才能也给NSPopover重点?目前,用户需要点击弹出框来聚焦它,但我想以编程方式获取焦点。

提前致谢

0 投票
1 回答
193 浏览

swift - 替换 NSStatusBarButton NSView 以禁用活力

我目前正在尝试减少添加到 Mac OS 中 NSStatusBarItems 图标的默认活力。我知道这可以通过更改allowsVibrancy 属性来实现。但是,由于它在 NSView 上是只读的,因此我需要扩展该类并覆盖 allowVibrancy 方法。

目前,我的图标仍然看起来像 allowVibrancy 已激活。我想知道我是否正确替换了我的 NSView。这是我的代码:

0 投票
1 回答
729 浏览

swift - 如何在 NSStatusBar 中绘制自定义视图?

我目前有一个NSStatusBar带有NSStatusBarItem标题的显示。但我不想用自定义替换标题/文本NSView。我怎样才能做到这一点?

我目前有:

假设我不想用以下内容替换标题:

我怎样才能做到这一点?我试图将它作为子视图添加到按钮,但没有运气。

0 投票
3 回答
455 浏览

cocoa - 从 `main()` 创建的 `NSStatusItem` 未显示在系统状态栏上

我正在尝试制作一个简单的 macOS Cocoa 应用程序NSStatusItem,用于在系统状态栏上创建一个可点击的图标。但是,当我启动我的应用程序时,我收到了这个警告并且图标没有出现:

这是我的应用程序的最小可重现示例:

我编译并运行了这样的示例:

注意:禁用自动引用计数并[statusItem release];在调用后run添加这个类似的问题建议没有明显的区别。

0 投票
2 回答
158 浏览

swift - 删除 NSStatusBarButton 上的苍白效果

我正在寻找一种方法来消除 NSStatusBarButton 的苍白效果。这是它当前外观的图片:

带有苍白图像的 NSStatusBarButton

它应该是这样的:

带有原始图像的 NSStatusBarButton

在查看了 Apple 的文档后,我找到了解决问题的方法。如果您直接设置按钮的外观(例如 Aqua 或 DarkAqua),则苍白效果消失:

但问题是当用户更改界面主题(例如从暗模式到亮模式)时,NSStatusBarButton 不会自动更改其外观:

NSStatusBarButton 不会自动改变外观

我可以监控AppleInterfaceThemeChangedNotification然后更改外观,但这不是一个干净的解决方案,我对此不满意。

有一个优雅的解决方案吗?NSStatusBarButton 中的图像应该简单地显示而不做任何更改(例如苍白)。因为我提供世界上所有的旗帜,所以我只有 png 格式的图像,没有 PDF 图像。

0 投票
1 回答
98 浏览

swift - 如何在 NSView 子类中绘制两行文本?(macOS 系统托盘)

我正在尝试在 macOS 系统托盘中写两行文本,就像 iStat pro 为网络活动所做的那样:

在此处输入图像描述

我知道我必须将 NSView 子类化才能这样做,但即使是一行我也无法让它工作:

接着:

我在stackoverflow上找到了其他线程: