Cocoa 如何制作具有图像和文本菜单的NSPopupButton?

Cocoa 如何制作具有图像和文本菜单的NSPopupButton?,cocoa,binding,nspopupbuttoncell,nspopupbutton,Cocoa,Binding,Nspopupbuttoncell,Nspopupbutton,我有一个应用程序列表,我想制作一个nspoupbutton,其中显示一个应用程序名称菜单,其图标位于每个项目的左侧 我已经能够将nspoupbutton绑定到我的项目数组,但是没有图像的绑定条目。我想我可以把一个单元格放进去,然后把它作为图像和文本绑定,但是我在IB中找不到合适的单元格 有没有一种干净简单的方法可以使用绑定来实现这一点?我必须写入自定义单元格吗?NSMenuItem具有图像绑定(在“参数”部分waaaaayyyyy中)。因此,我认为应该将该值绑定到正在运行的应用程序数组中的路径。

我有一个应用程序列表,我想制作一个
nspoupbutton
,其中显示一个应用程序名称菜单,其图标位于每个项目的左侧

我已经能够将
nspoupbutton
绑定到我的项目数组,但是没有图像的绑定条目。我想我可以把一个单元格放进去,然后把它作为图像和文本绑定,但是我在IB中找不到合适的单元格


有没有一种干净简单的方法可以使用绑定来实现这一点?我必须写入自定义单元格吗?

NSMenuItem具有图像绑定(在“参数”部分waaaaayyyyy中)。因此,我认为应该将该值绑定到正在运行的应用程序数组中的路径。您可以使用共享的
NSWorkspace
对象获取应用程序的图标。

无法使用常用的nspoupbutton绑定图像以及菜单项的标题。您必须对它进行子类化,并编写一个IBPlugin来公开子类。当然,你也应该处理这个细胞


我发现将绑定与NSPopUpButton混合在一起会带来很多伤害,原因有很多,包括无法使用分隔符和“Default”或“All”等脱离模型的菜单项。考虑使用不同的控件,比如源列表,或者手动填充和重新填充弹出菜单。

如果他绑定一个已经存在的菜单项,那就太好了。这个问题意味着他已经绑定了弹出按钮本身,让它动态生成菜单项。。。里面有一个ImageAndTextCell类。是的,但这对NSPopUpButton没有帮助,它需要一个NSPopUpButtonCell。另一种单元格不知道如何显示和跟踪菜单。没有办法指定第二个单元格来显示内容对象,因为这是菜单项的工作。