0

我有NSComboBox很多物品。因此,我激活了自动完成功能,以便用户可以“搜索”他需要的项目。

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

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

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

4

1 回答 1

0

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

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

这工作正常:

override func controlTextDidChange(obj: NSNotification!) {
    if obj.object as NSObject == myComboBox {
        myButton.enabled = myComboBox.indexOfItemWithObjectValue(myComboBox.stringValue) != NSNotFound
    }
}
于 2014-08-07T20:34:24.427 回答