如何拖动 NSStatusItems

2023-11-23

大家都知道 Mac OS X 中的菜单栏(或者更好的说法是 NSStatusBar)。
有些物品我可以移动,有些则不能。

我希望能够拖动我的应用程序的 NSStatusItem。

知道如何实现吗?


尽管 NSStatusItems 出现在 Apple 的内部“菜单附加项”附近,但它们是不同的并且行为不同。如果苹果统一可以出现在菜单栏右侧区域的项目,那就太好了,但目前该部分被分为不同的“苹果内部”(右侧)和“应用程序提供的(NSStatusItem)” “ 在左侧。

您可以通过将计算机置于屏幕捕获模式 (cmd-shift-4) 并按空格键切换到“捕获整个窗口”来直观地看到区别。当您将鼠标悬停在 Apple 的菜单图标上时,您会看到它们都位于一个窗口中。这解释了它们为何能够轻松地被管理和拖拽。将鼠标悬停在其他项目上会发现每个 NSStatusItem 实际上都位于其自己的单个窗口中(该窗口恰好由安装它的应用程序拥有)。

即使您无法拖动它们,最好还是坚持使用 NSStatusItem。这是苹果公司的一个缺点,大多数用户都会理解,即使它很烦人。强调长期提供更稳定的应用程序的积极权衡通常会软化那些推动可拖动性的客户(或经理?)的意见。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

如何拖动 NSStatusItems 的相关文章

  • 使用 NSError 检查错误的正确结构

    我正在编写各种例程 并尽力保持其整洁和重构 我正在创建的方法开始看起来与此代码类似 IBAction buttonPress id sender Create Document Shopping List with this documen
  • 为沙盒 Cocoa 应用程序创建临时文件

    我的应用程序是沙箱化的 根据最新的应用程序商店指南 我想创建一些临时文件 我可以这样做吗 如果 是 我可以在哪里这样做 有没有预先指定的路径 还有访问该路径的命令 您应该使用NSTemporaryDirectory 函数 它将查找并返回适合
  • NSTextField 弹跳截断的文本而不是换行

    我想知道是否有一种简单的方法来 弹跳 或滚动NSTextField文本太长而无法显示 例如 lt scroll This is a rather large pi ece of text 因此 在此示例中 文本将滚动到末尾 显示消息的其余部
  • 如何在 e2e AngularJS 测试中进行文件上传?

    在我的一种观点中 我有一个文件上传控件 它支持通过拖放或单击按钮后打开的标准文件对话框上传文件 How to do this in my e2e tests1 1 Just one of the two options will be en
  • Swing:创建可拖动组件...?

    我在网上搜索了可拖动 Swing 组件的示例 但我发现示例不完整或不起作用 我需要的是一个摇摆组件那可以是dragged通过鼠标 在另一个组件内 被拖拽的时候 应该已经 改变它的位置 而不仅仅是 跳 到目的地 我很欣赏无需非标准 API 即
  • 当前收据无效或不匹配的 ds 人员 ID

    我正在尝试测试 MacOS 的应用内购买 输入测试用户凭据后 App Store 抱怨 当前收据无效或 ds 人员 ID 不匹配 并且购买失败 我尝试了很多方法来解决这个问题 获取 App Store 收据 http www kotanco
  • 拖动时跳转 ImageView。 getX() 和 getY() 值正在跳跃

    我创建了一个用于拖动视图的 onTouchListener 如果我使用的话 图像可以顺利拖动getRawX and getRawY 问题是 当您向下放置第二个指针然后抬起第一个指针时 图像将跳转到第二个指针 此 onTouchListene
  • 如何添加从 Outlook 到 Web 表单的拖放上传功能?

    我正在寻找一种方法 允许用户以简单的方式将 Outlook 电子邮件上传到基于 Web 的系统 我可以让它以手动方式为用户工作 他们可以将电子邮件从 Outlook 拖放到桌面上 这会创建一个 msg 文件 这非常有效 尤其是 电子邮件中是
  • 如何设置 NSButton OSX 的背景颜色

    我想设置 NSButton 的背景颜色 属性检查器中没有任何内容 所以我想知道是否有任何方法可以以编程方式完成此操作 系统控件需要遵循 Apple 的外观和感觉 因此您无法轻松更改背景颜色 如果你想完成这个 你需要子类化 NSButton
  • 一段简单的代码,在 GC 下运行良好,但在 ARC 中开始崩溃

    我有以下简单的 检查我的应用程序是否设置为在登录时启动 代码 它在垃圾收集下工作得很好 然而 自从我开始使用 ARC 并插入了 bridge 根据需要 代码开始随机且不可预测地崩溃 根据堆栈跟踪 代码在某些期间崩溃CFRelease 有什么
  • 在 UWP 中拖放到银行帐户列表中

    我有一个本地银行的通用 Windows 应用程序 我正在处理汇款视图 他们需要使用 UWP 应用程序中的拖放功能将资金从一个帐户转移到另一个帐户 我已经制作了动画部分 但在将列表项拖放到 帐户至 列表后需要帮助 I ll attach a
  • Core Data 与 SQLite 3 [关闭]

    就目前情况而言 这个问题不太适合我们的问答形式 我们希望答案得到事实 参考资料或专业知识的支持 但这个问题可能会引发辩论 争论 民意调查或扩展讨论 如果您觉得这个问题可以改进并可能重新开放 访问帮助中心 help reopen questi
  • iCloud Drive 内用户选择的文件夹内的垃圾文件

    我的应用程序可在任何用户选择的文件夹内处理用户 txt 文件 创建 更改 删 除 我只是在内部存储书签以访问用户选择的文件夹和文件 现在 在 macOS Catalina 中 当源文件夹位于 iCloud Drive 内时 系统仍然允许我创
  • 使用 NSTokenField 强制 NSPopover 不成为第一响应者

    我有一个 NSTokenField 并且在弹出窗口内提供自定义自动完成功能 不幸的是 一旦显示弹出窗口 它就会强制 NSTokenField 放弃第一响应者 有没有办法显示弹出窗口但不丢失 NSTokenField 上的第一个响应者 重写
  • 为什么我的 NSTableView 中的图像淡出?

    首先 有一个NSArrayController 服务器 其内容是 服务器 对象的数组 我也有一个NSTableView与一列 该列绑定到服务器的 arrangedObjects status 属性 我用的是自定义的NSValueConver
  • 如何使用NSDecimalNumber?

    我正在构建一个需要对金钱进行计算的应用程序 我想知道如何正确使用 NSDecimalNumber 特别是如何从整数 浮点数和双精度数初始化它 我只发现它很容易使用 decimalNumberWithString 方法 这 initWith
  • 使用 Nib 实现国际化。这真的是个好主意吗?

    在苹果文档中 他们说笔尖只需将笔尖翻译成多种语言即可实现国际化 我现在正在考虑一个更糟糕但现实的场景 你已经制作了一个巨大的用户界面 然后你将其翻译成 25 种语言 所以你会得到 25 个不同的笔尖 您还会在样式和定义 UI 方面获得巨大的
  • iPhone,使用 isKindOfClass 是否被认为是不好的做法?

    例如 如果有一个 处理所有 类型的方法 if obj isKindOfClass class1 else if obj isKindOfClass class2 etc 这是不好的做法吗 是否有更简洁的替代方案或更好的方法来构建代码 在运行
  • 在 Interface Builder 中调整控件的大小以适合其容器

    假设我有一个分割视图 我想用表视图填充其中的一半 我认为这是一个相当常见的用例 有什么方法可以告诉表视图调整自身大小以适应分割视图 还是我真的必须手动调整它的大小 我已经这样做了 就像乔恩 赫斯首先提到的那样 假设您使用的是 Interfa
  • 如何构建一个在 Mac OS 10.6 上运行并支持 NSUserNotificationCenter 的应用程序?

    我做了很多研究 但找不到我要找的东西 目前 双方Deployment Target and Base SDK我的应用程序设置为10 8 并且运行完美 我可以正确地将通知发布到 Mountain Lions 新的通知中心 构建也在 Mac O

随机推荐

  • 远程跟踪分支和远程分支有什么区别?

    看来我可以从远程存储库上的分支中提取或推送到我正在处理的分支 如果是这样 那么远程跟踪分支的目的是什么 仅仅是为了检查分支并看看它是什么样子吗 看起来远程跟踪分支就像远程分支的镜子 仅供参考 我对 git 相当陌生 但是已经阅读并重新阅读了
  • TMemo 最大宽度

    有没有办法让TMemo将超过1024的文本显示为1行 看看这个简单的代码 procedure TForm1 Button2Click Sender TObject var s string i integer begin s for i 0
  • 了解非阻塞线程同步和Thread.MemoryBarrier

    在这本线程在线书中 http www albahari com threading part4 aspx 有一个例子Thread MemoryBarrier class Foo int answer bool complete void A
  • 欠定系统的非负最小二乘

    考虑以下问题 Find x 1 x 2 x 3 gt 0这样 67 5 60 x 1 90 x 2 120 x 3 60 30 x 1 120 x 2 90 x 3 有没有办法在Python中解这个方程 也许与scipy nnls 使用 s
  • 同时按总和聚合一列并按平均值聚合另一列

    我想在日期框架上使用聚合函数 但对一列求和并取另一列的平均值 这是一个示例数据框 Manager Category Amount SqFt Joe Rent 150 500 Alice Rent 250 700 Joe Utilities
  • 更改通用 Windows 平台中的按钮样式

    我尝试制作一个简单的 C UWP 应用程序 但我不知道当鼠标悬停在按钮上时如何删除灰色背景 我怎么做到这一点 请记住 它是适用于 Windows 10 平台的 UWP 而不是 Windows Phone 8 1 或 WPF 按着这些次序 在
  • Qt 检测计算机何时进入睡眠状态?

    如何检测用户计算机何时进入睡眠状态 笔记本电脑盖子关闭 由于不活动而进入睡眠模式等 我需要这样做来断开用户的 TCP 连接 基本上我们有一个简单的聊天应用程序 我们想让用户离线 Qt 无法检测计算机何时进入睡眠或休眠状态 但有一些依赖于平台
  • 对于数组,为什么会出现 a[5] == 5[a] 的情况?

    正如乔尔在书中指出的那样堆栈溢出播客 34 in C语言 又名 K R C 中提到了数组的这个属性 a 5 5 a Joel 说这是因为指针运算 但我还是不明白 为什么a 5 5 a C 标准定义了 运算符如下 a b a b 所以a 5
  • Django Rest框架-过滤多对多字段

    假设我有一个这样的模型 class Car models Model images models ManyToManyField Image class Image models Model path models CharField ty
  • ZF2 中的会话

    您能告诉我如何在 ZF2 中正确使用会话吗 到目前为止我有这个代码 session gt remember me seconds gt 2419200 use cookies gt true cookie httponly gt true
  • 在列表中创建重复的项目

    我有以下代码来复制列表的成员X times 虽然它有效 但感觉不是特别干净 实时代码示例 http rextester com UIVZVX7918 public static List
  • 如何通过方法参数加锁?

    string Get string key lock sync DoSomething 如果 DoSomething 仅依赖于密钥 我想要密钥依赖锁 我认为它可能是带有同步对象的字典 有没有完整的解决方案 就像真实的例子一样在 ASP NE
  • Instagram API 匹配代码未找到或已被使用

    我在使用 Instagram API 的实时服务器上看到此错误 Error true message Matching code was not found or was already used 我在这里阅读了一些清除缓存的建议 但这并不
  • Laravel:POST 方法返回 MethodNotAllowedHttpException

    我有一个POST路线在我的api php文件 它是这样的 Route group namespace gt api function Route post parent signup ParentController signUp 我正在尝
  • ejb 3.1 中的计时器服务 - 调度调用超时问题

    我使用 Singleton Schedule 和 Timeout 注释创建了简单的示例 以尝试它们是否能解决我的问题 场景是这样的 EJB 每 5 秒调用一次 检查 函数 如果满足某些条件 它将创建单个操作计时器 该计时器将以异步方式调用一
  • JavaFX:将控制台输出重定向到在 SceneBuilder 中创建的 TextArea

    EDIT 4 我创建了一个简单的示例 应该可以让您了解现在发生的情况 现在发生的情况是 每当我单击按钮将 HELLO WORLD 打印到 TextArea 时 程序就会挂起并使用 100 的 CPU Eclipse 控制台面板中也没有输出
  • 检查 COM 接口是否还存在?

    在 COM 中 如何验证指向 COM 对象的指针在另一端仍然具有有效的对象 我遇到一个问题 以下代码尝试检查是否m pServer指针仍然存在 但是当暴露该接口的应用程序被终止时 这段代码会使应用程序崩溃 有人可以建议如何在使用前检查指针吗
  • 在 Activity 的 onDestroy 方法中保存数据

    我正在编写一个任务列表并拥有 Project 对象 其中包含所有任务 和元数据 我使用操作日志 因此当任务发生变化时 我不会立即将其保存到数据库中 而是将其保留在内存中 以便在活动完成时转储到数据库中 Activity 的 onDestro
  • Django 异步处理

    我有一堆 Django 请求 它们执行一些数学计算 用 C 编写并通过 Cython 模块执行 这可能需要不确定的时间 大约 1 秒 来执行 此外 请求不需要访问数据库 并且彼此独立且独立于 Django 现在一切都是同步的 使用 Guni
  • 如何拖动 NSStatusItems

    大家都知道 Mac OS X 中的菜单栏 或者更好的说法是 NSStatusBar 有些物品我可以移动 有些则不能 我希望能够拖动我的应用程序的 NSStatusItem 知道如何实现吗 尽管 NSStatusItems 出现在 Apple