有没有办法将 NSMenu
之类的对象显示为 NSPopover
的内容?
本质上,我想在您右键单击应用程序图标时重现 macOS Dock 所做的事情(我不介意这里的深色背景,我只对以类似弹出框的窗口样式显示菜单感兴趣指向其目标的箭头)。
我一直在研究 NSPopUpButton
的作用,但找不到以这种方式配置此组件的方法;它有一个 arrowPosition
但这实际上是指按钮本身上箭头的方向。
另外 NSMenu
是一个 NSObject
并且我再次看不到一种干净的方式来获取它的 View 并将其添加到弹出窗口中,所以我想这是不可能的,但也许你有更好的主意?
感谢您的任何建议!
最佳答案
您可以查看苹果菜单编程指南:
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;
}
关于macos - 如何显示嵌入在 NSPopover 中的 NSMenu?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/44635606/