2010-05-19 79 views
0

我需要在多个弹出按钮之间共享相同的NSMenu实例。如何在多个NSPopUpButton实例之间最好地共享NSMenu

当我在IB中创建NSPopUpButton时,会自动创建一个新菜单并作为NSPopUpButtonCell的子项插入。

目前,我只是在我的MainController中创建一个IBOutlet NSMenuItem * standardMenu成员,并将弹出按钮的“菜单”出口连接到此,但这会在层次结构中留下“假”菜单。

当然,从IB内部干净的方式呢?

在此先感谢您提供的任何建议。

回答

1

你应该能够在IB建立一个独立的菜单做所有的连接等你需要的。然后创建一个连接到IB菜单的插座IBOutlet NSMenu *standardMenu;。然后,对于每个需要菜单的弹出窗口,请使用[popupButton setMenu:standardMenu];。如果由于某种原因,它会让旧项目告诉它先删除所有项目。

+1

谢谢。这就是为什么我试图连接弹出式菜单按钮的菜单出口时,给了我很多问题(这可以完成,但只能使用“反向引用出口”),所以我最终做了这件事。 仍然我会希望有一个更好的办法比保持链接到所有popupbutton并以编程方式设置它们..在AppKit和IB的那些粗糙的边缘之一.. – 2010-05-20 09:09:14

相关问题