gpt4 book ai didi

objective-c - 在 OS X 的停靠栏上下文菜单中显示图标?

转载 作者:太空狗 更新时间:2023-10-30 03:44:37 25 4
gpt4 key购买 nike

我的问题很简单:

要为停靠栏上的应用程序图标使用自定义菜单,- (NSMenu*) applicationDockMenu: (id) sender; NSApplicationDelegate 必须返回菜单码头将显示。

NSMenuItem 上使用 setImage,您通常可以将图标添加到菜单。它们出现在普通菜单上,但不出现在应用程序停靠栏图标的上下文菜单中。

那么 Apple 如何管理 QuickTime、XCode、Preview 以在最近打开的文件列表中显示图标,这些文件可在其停靠栏上下文菜单中访问?

谢谢。

最佳答案

最近的文件列表实际上是标准 Dock 图标菜单的一部分。要在您的应用程序中使用它,您应该构建一个基于 NSDocument 的应用程序。通过使用 NSDocument,您将免费获得最近的文件菜单/行为。

如果您的应用程序不能基于NSDocument,您可以指示Cocoa 根据URL 维护最近的文档列表:

NSDocumentController *docController = [NSDocumentController sharedDocumentController];
[docController noteNewRecentDocumentURL:locationOfMyRecentFile1];
[docController noteNewRecentDocumentURL:locationOfMyRecentFile2];
[docController noteNewRecentDocumentURL:locationOfMyRecentFile3];

请注意,目前,-noteNewRecentDocumentURL: 仅支持 file:// URL(您可以使用 +[NSURL fileURLWithPath:].) 将来,它的行为可能会改变以允许具有其他方案的 URL。

关于objective-c - 在 OS X 的停靠栏上下文菜单中显示图标?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11380387/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com