可可组合框自动完成动作

时间:2014-08-07 20:08:20

标签: objective-c cocoa swift nscombobox

我有NSComboBox有很多项目。因此我激活了自动完成功能,以便用户可以搜索"对于这个项目,他需要。

此外,在选择项目后,我有一个用户必须单击的按钮。此按钮被禁用,只有在选择了组合框的项目时才应启用此按钮。

通过点击进行选择很容易,我只需要IBAction 但是,当组合框完成输入的文本时,我怎么知道呢?

我想在自动完成找到项目后立即启用该按钮。

1 个答案:

答案 0 :(得分:0)

好的,我自己找到了解决方案。

首先,我尝试查看controlTextDidChange方法,如果是indexOfSelectedItem >= 0。这有效,但并不完美。

这很好用:

override func controlTextDidChange(obj: NSNotification!) {
    if obj.object as NSObject == myComboBox {
        myButton.enabled = myComboBox.indexOfItemWithObjectValue(myComboBox.stringValue) != NSNotFound
    }
}