问题标签 [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 投票
0 回答
96 浏览

objective-c - 如果应用程序菜单变大,NSSatusItem 会被隐藏

可能重复:
被告知何时隐藏 NSStatusItem

我目前正在开发一个小型 Mac OS X 应用程序,它在状态栏中显示文本。如果有帮助,我正在使用NSStatusItem可变长度的。

我看到的问题是,当活动应用程序的菜单太大时,它会从右到左隐藏状态项。

这里有足够的空间来显示我的状态项

如果我现在切换到具有更大菜单的另一个应用程序,我的状态项将被隐藏,如您在此屏幕截图中所见。

没有足够的空间来显示我的状态项

我已经尝试通过订阅此处NSWindowDidMoveNotification建议的来调整文本长度,但它只触发一次,我调整文本长度的代码没有任何效果。

我的问题是:是否有任何其他通知可以让我收听以调整我的状态项?

提前致谢!

更新:让我补充一点,我的应用程序是一个代理应用程序,它在运行时不会显示在 Dock 中,如果这有影响的话。

0 投票
1 回答
551 浏览

objective-c - Mac 系统状态栏焦点

我通过以下代码向我的 systemStatusBar 添加了一个菜单:

然后设置它的属性。它与其他状态项(音量、日期时间、Wi-Fi、BatteryIndi​​cator 等)的唯一不同是,如果我选择它并按下键盘上的左或右方向按钮,我将无法导航到其他项目,同样明智如果我选择另一个状态项并按方向键,它将不会选择我的状态项,而是跳转到另一个状态项。我想知道有没有办法解决这个问题,还是非操作系统状态项的标准?

0 投票
1 回答
298 浏览

objective-c - NSStatusItem 阻止 NSWindows 中的用户界面更新

我正在开发一个应用程序,这个应用程序中有几个 NSWindows 和一个 StatusItem 以便在它们未打开时访问任何 NSWindows。其中一些窗口不断用新的数字和状态更新它们的界面。问题是每当我单击系统状态栏中的 StatusItem 时,它都会阻止 Windows 上的更新,并且在关闭 StatusMenu 之前我看不到任何更新。

0 投票
1 回答
1129 浏览

objective-c - NSTextField 在附加到 NSStatusItem 的 NSPopover 上不活动

我有一个这样创建的 NSStatusItem:

我也有一个带有自定义视图的弹出窗口。在视图中我有文本字段: http: //d.pr/i/CWbr

我的弹出框显示如下:

从调试器中我了解到这sender是一个NSStatusBarButton类的实例。

问题是,当弹出窗口弹出我无法在文本字段中输入时,它似乎处于非活动状态:http ://d.pr/i/q18U

该按钮正在工作。

我认为这个问题出在我传递给ofView:. 我试图将其更改为窗口上的控件,如下所示:

并且文本字段变得活跃(http://d.pr/i/DmTz),但我不知道为什么这会有所帮助。

为什么我的弹出框文本框在从菜单中弹出时变为非活动状态?为什么按钮有效?如何使文本字段处于活动状态?

PS我的应用是Application is agent (UIElement)

0 投票
1 回答
282 浏览

objective-c - NSStatusBar 应用程序 - 窗口始终在顶部(忽略热点)

我正在尝试复制在 Evernote 的 NSStatusBar 图标中发现的行为(见图)。我的左上角 - 热角设置为显示桌面。这会将所有窗口移开,除了印象笔记菜单。他们如何做到这一点?

我已经尝试了所有的 setLevel 选项。hideOnDeactive NO.

Evernote 忽略热点

0 投票
4 回答
2064 浏览

macos - 更改菜单栏应用程序字体大小

可能存在更改菜单栏应用程序标题字体大小的简单方法,使@“title”显示比默认值更小(或更大)

0 投票
1 回答
709 浏览

javascript - NSStatusBar 与 NodObjC

我正在尝试使用 NodObjC 使用 Node.js 创建一个可可应用程序。我一直在创建一个仅在 MacOS X 上作为 HTTP 服务器运行的应用程序。

NodObjC https://github.com/TooTallNate/NodObjC

我想像这样在 StatusBar 上用图标显示服务器状态。 在此处输入图像描述

我试过这样:

但是这段代码会导致错误

我找不到此错误的任何解决方案。有人可以给我任何建议吗?

0 投票
1 回答
231 浏览

macos - 使用 IBAction 设置菜单栏应用程序字体

可能存在使用 IBAction 设置菜单栏应用程序标题字体和字体大小的方法,(设置字体也为“标题”的字体大小)

0 投票
3 回答
728 浏览

objective-c - 是否可以将 NSStatusItem 添加到 NSStatusBar 中的特定位置?

我用来self.statusItem = [[NSStatusBar systemStatusBar] statusItemWithLength:NSVariableStatusItemLength];向 OSX 上的 systemStatusBar 添加一个 statusItem。statusItem 然后出现在 systemStatusBar 的最左侧位置。我想知道是否有办法将这样的项目添加到特定索引,例如在系统时钟的左侧?

0 投票
3 回答
1317 浏览

macos - Mavericks 和 NSStatusItem 的带有多个监视器的自定义视图

由于小牛队每个屏幕都有自己的状态栏。这也意味着在状态栏中运行的应用程序(使用 NSStatusItem)理论上有多个关联的 NSStatusItem 对象。在实践中,尽管用户可能会看到您的 NSStatusItem 的多个“实例”,但它只是一个(我已经对此进行了测试)。现在,当您在状态图标中使用自定义视图时会出现以下问题:当用户单击状态图标时,我使用 drawStatusBarBackgroundInRect 方法以编程方式“突出显示”它。问题是状态图标的每个“实例”(每个屏幕一个)都被突出显示,尽管用户只是单击了一个。此行为不同于没有自定义视图的状态图标。有没有办法正确实施?

例如,当您使用多台显示器时,只需单击 Dropbox 状态图标即可。您也会注意到另一个屏幕上的图标选择。