我有一个NSTable,其中包含NSPopUpButtonCells列。我想根据表中另一列的内容过滤NSPopUpButtonCell。感觉上应该有一个相当简单的解决方案,但是目前看来,我要提出的解决方案非常复杂。我最大的问题似乎是,当应用程序运行时,当我单击NSPopUpButtonCell时,在显示菜单然后启动筛选器之前,我找不到要激活的内容。我尝试过一些诸如tableViewSelectionIsChanging之类的东西:但是它们似乎在激活PopUpButton的列表之后都被激活了。

任何帮助深表感谢。

最佳答案

事实证明,有一个简单的解决方案。
我正在使用NSArrayController来控制表中的行。每行都是InputCell类的对象。我添加了一个将NSArray返回到InputCell类的方法,该方法使用[self valueForKey:]根据单元格的过滤条件创建另一个数组。然后,我可以使用绑定通过NSArrayController将NSPopUpButtonCell的内容绑定到数组。

10-07 18:34