问题标签 [nsstatusitem]

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 投票
2 回答
1472 浏览

cocoa - NSStatusItem 内 WebView 的自定义右键菜单

我在 NSStatusItem 中嵌入了一个 WebView,当用户右键单击 WebView / NSStatusItem 时,我想显示我在 Interface Builder 中构建的 NSMenu。最简单的方法是什么?

0 投票
1 回答
5435 浏览

objective-c - 如何在单击 NSStatusItem 时打开一个窗口?

我对可可很陌生,所以请原谅我犯的任何愚蠢的错误。我有一个 NSStatusItem,我想用它来打开一个菜单。但是,据我所知并听说过不同的表单,如果没有自定义视图,您只能使用弹出菜单。这是真的?如果是这样,您如何制作自定义视图来做某事(例如,在我的情况下打开一个窗口)?谢谢你的帮助。

0 投票
2 回答
542 浏览

cocoa - 如何让我的菜单看起来像这样

我如何通过 menulet 应用程序获得这种效果。我只想要窗户效果。

标题

我当前的应用程序看起来像这样。请如果有人能阐明一下,将不胜感激。谢谢。 在此处输入图像描述

0 投票
2 回答
4647 浏览

cocoa - 使用 NSStatusItem 拖放

我正在尝试编写一个应用程序,允许用户将文件从 Finder 拖放到NSStatusItem. 到目前为止,我已经创建了一个实现拖放界面的自定义视图。当我将此视图添加为一个子视图时,NSWindow它一切正常 - 鼠标光标提供适当的反馈,并且当我的代码被删除时被执行。

但是,当我使用与视图相同的NSStatusItem's视图时,它的行为不正确。鼠标光标会给出适当的反馈,表明可以删除文件,但是当我删除文件时,我的删除代码永远不会被执行。

我需要做一些特别的事情来启用拖放NSStatusItem吗?

0 投票
1 回答
1557 浏览

objective-c - 保存首选项以显示或隐藏 NSStatusItem

我有一个应用程序作为普通应用程序运行,但也有一个NSStausItem. 我想实现在首选项中设置一个复选框的能力,当这个复选框打开时,状态项应该被显示,但是当复选框关闭时,状态项应该被删除或不可见。

我在这里的论坛中发现有人面临类似问题:如何使用复选框打开和关闭菜单栏中的状态项?

但是我对这个解决方案的问题是它不能按预期工作。所以我勾选了这个复选框,一切正常,但是当我第二次打开应用程序时,应用程序无法识别我在第一次运行时所做的选择。这是因为复选框没有绑定到 aBOOL或其他东西,复选框只有一个IBAction,它在运行时删除或添加状态项。

所以我的问题是:如何在首选项中制作一个复选框,让我选择是否显示状态项。


好的,实际上我尝试了以下我从给你链接的帖子中复制了

在 AppDelegate.h 中:

然后在 Delegate.m 中:

然后在 IBaction 我添加了这个:

在我的 awakefromnib 中,我添加了这个:`

然后在界面生成器中,我创建了一个新的复选框,将其与“myStatusItemCheckbox”连接起来,并添加了一个 IBaction,我还单击了绑定检查器并设置了以下绑定到的值:NSUserDefaultController并且正如ModelKeyPath我设置的那样:MyApp_ShouldShowStatusItem. 不幸的是,这根本不起作用是什么我做错了吗?

0 投票
2 回答
1600 浏览

macos - 如何在 Mac OS X 菜单栏的右上角显示我的应用程序图标(以编程方式)

我知道 Skype 做到了——他们在那里有一个特殊的图标注册。然后当用户单击该图标时,将出现一个下拉菜单...

0 投票
4 回答
2073 浏览

objective-c - 单击后从 NSMenuItem 中删除突出显示?

我已经向我的 NSMenuItem 子类(位于 NSStatusMenu 中)添加了一个自定义视图,这意味着默认情况下它不会以蓝色/灰色背景“突出显示”。

我通过使用以下代码实现了这一点:

菜单项很好地突出显示,我也可以单击每个项目;但是,当我单击它们时,一旦我重新打开菜单,它们似乎会保持isHighlighted状态。

有没有办法改变它,所以当我点击时,当我下次打开菜单时,突出显示的状态会被删除?

0 投票
1 回答
1252 浏览

objective-c - 在 NSMenuItem 内带有 NSView 的假 NSWindow

在开始之前,我应该说我知道这似乎是一个很长的尝试,但我认为值得一试。

我现在正在开发的一个应用程序是 Mac 状态栏应用程序。它在菜单栏中有一个 NSStatusItem,当点击它时,它会显示一个带有弹出窗口外观的自定义窗口(就像在 iPad 上或在 mac 上的 Fantastical 一样。)无论如何,我开始通过在状态项菜单中插入一个 nsmenu 项目来测试它。该视图已为其窗口上的背景颜色设置了清晰的颜色。但是,这仍然不太有效,如下图所示

在此处输入图像描述

  1. 物品上方和下方仍有一条小的白色细线
  2. 清晰区域不清晰,就像上面有模糊滤镜一样

除此之外,它的效果非常好。我只是不知道其他人是否曾经尝试过这样的事情,并想出如何克服这两个问题,这似乎是唯一阻止它工作的事情。

如果没有办法做到这一点,我可能不得不为 NSStatusItem 使用自定义视图,这样我就可以在屏幕上获取坐标,将我自己的窗口定位在 NSStatusItem 下方。

0 投票
1 回答
938 浏览

cocoa - Cocoa:自动关闭状态菜单

我在状态栏上有一个状态菜单,我有一些在幕后运行的任务。当其中一项任务完成时,假设在显示菜单(下拉)时,我想让菜单不处于下拉模式(假装在菜单图标上单击鼠标左键)。有没有办法做到这一点?

0 投票
1 回答
588 浏览

objective-c - 如何一直关注 NSStatusItem 直到再次切换它

我正在构建一个使用 NSStatusItem 的应用程序。我希望我的 NSStatusItem 在单击时打开并保持打开状态,直到用户再次单击 NSStatusItem。截至目前,它打开了菜单,但是当我点击离开它或点击另一个应用程序时,NSStatusItem 失去了焦点。我希望 NSStatusItem 的菜单保持打开状态,直到用户单击关闭它。到目前为止,这是我的代码,只是为了制作 NSStatusItem。谢谢