我需要在多个弹出按钮之间共享相同的NSMenu实例。
当我在IB中创建NSPopUpButton时,会自动创建一个新菜单并将其作为NSPopUpButtonCell的子项插入。
目前,我只需在我的MainController中创建一个IBOutlet NSMenuItem * standardMenu成员,并将弹出按钮的“菜单”插件连接到此,但这会在层次结构中留下“假”菜单。
当然,从IB内部有一个干净的方法吗?
提前感谢您提供的任何建议。
答案 0 :(得分:1)
你应该能够在IB中建立一个独立的菜单,使你需要所有的连接等。然后创建一个连接到IB菜单的插座IBOutlet NSMenu *standardMenu;
。然后对于需要菜单的每个弹出窗口,只需使用[popupButton setMenu:standardMenu];
。如果由于某种原因它保留旧项目只是告诉它首先删除所有项目。