我有一个NSPopupButton,点击时会显示一个下拉菜单。此菜单由NSArray填充。现在,如果我点击下拉菜单中的一个项目,我可以选择它并确定选择的内容等。 我想要做的是当用户点击NSpopup按钮,更新下拉菜单然后让用户选择其中一个项目。 当我只选择下拉菜单(不点击其中任何一项)时,我无法找到如何调用IBAction方法。单击菜单中的项目会导致IBAction,但我只想单击NSPopupButton中的向下箭头来触发操作。有任何想法吗 ?感谢。
答案 0 :(得分:5)
NSPopupButton
点击后发送NSPopUpButtonWillPopUpNotification
。让控制器对象监听该通知,并通过更新下拉菜单进行响应。
答案 1 :(得分:0)
可接受的答案起作用了,尽管现在它称为NSPopUpButton.willPopUpNotification
在Swift 4.x中,我的代码如下:
NotificationCenter.default.addObserver(self,
selector: #selector(dropdownMenuOpened),
name: NSPopUpButton.willPopUpNotification,
object: nil)