3

我有一个 NSPopupButton,单击时会显示一个下拉菜单。此菜单由 NSArray 填充。现在,如果我单击下拉菜单中的一项,我可以选择它并确定选择的内容等。我想要做的是当用户单击 NSpopupbutton 时,更新下拉菜单然后让用户选择其中一项。当我简单地选择下拉菜单(不单击其中的任何一项)时,我无法找到如何调用 IBAction 方法。单击菜单中的项目会导致 IBAction,但我只想单击 NSPopupButton 中的向下箭头来触发操作。有任何想法吗 ?谢谢。

4

2 回答 2

5

单击时NSPopupButton发送一个。NSPopUpButtonWillPopUpNotification让您的控制器对象侦听该通知并通过更新下拉菜单进行响应。

于 2012-03-09T14:56:05.423 回答
1

接受的答案有效,但现在它被称为 NSPopUpButton.willPopUpNotification

在 Swift 4.x 中,我的代码如下所示:

NotificationCenter.default.addObserver(self,
                 selector: #selector(dropdownMenuOpened),
                 name: NSPopUpButton.willPopUpNotification,
                 object: nil)
于 2019-01-02T18:12:50.530 回答