如何显示嵌入在 NSPopover 中的 NSMenu?

ggo*_*d75 5 macos nspopupbuttoncell nspopupbutton nspopover

有没有办法将NSMenu类似对象显示为 a 的内容NSPopover

本质上,我想在您右键单击应用程序图标时重现 macOS Dock 所做的事情(我不介意这里的深色背景,我只对以类似弹出框的窗口样式显示菜单感兴趣指向其目标的箭头)。

我一直在研究是什么NSPopUpButton,但我找不到以这种方式配置这个组件的方法;它有一个,arrowPosition但这实际上是指按钮本身上箭头的方向。也是NSMenu一个NSObject又一次,我看不到一种干净的方式来抓取它的视图并将其添加到弹出窗口中,所以我想这是不可能的,但也许你有更好的主意?

感谢您的任何建议!

在此处输入图片说明

use*_*917 -3

您可以查看苹果菜单编程指南: https://developer.apple.com/library/archive/samplecode/MenuItemView/Introduction/Intro.html#//apple_ref/doc/uid/DTS10004136

在AppDelegate中你可以看到:

// -------------------------------------------------------------------------------
//  applicationDockMenu:sender
// -------------------------------------------------------------------------------
// This NSApplication delegate method is called when the user clicks and holds on
// the application icon in the dock.
//
- (NSMenu *)applicationDockMenu:(NSApplication *)sender
{
    return self.appDockMenu;
}
Run Code Online (Sandbox Code Playgroud)