插入点离开NSComboBox时如何通知

时间:2017-02-15 04:13:37

标签: macos cocoa combobox swift3

我希望在插入点离开组合框时获得控制权,以便我可以测试文本是否与combox列表中的条目匹配。我已经为我的视图控制器添加了一个委托,用于其他组合框功能,例如:

func comboBox(_ aComboBox: NSComboBox, completedString string: String) -> String?

以下功能看起来像我想要的那样:

func control(_ control: NSControl, textShouldEndEditing fieldEditor: NSText) -> Bool

我的应用程序代码IDE将其标识为在API中。当我运行我的代码时,它不会被调用(我有一个print语句)。我尝试将“control”更改为“comboBox”但没有成功。我是否需要做一些额外的事情才能调用此函数?

更新

正如@Mangerlahn所指出的,该函数需要在数据源中。我把它移到那里没有任何效果。它在代表中。

extension TrackDialogViewController: NSComboBoxDataSource {
...
func control(_ control: NSControl, textShouldEndEditing fieldEditor: NSText) -> Bool {...}
...
}

1 个答案:

答案 0 :(得分:0)

愚蠢的用户错误。我丢失了一个RAID驱动器,不得不重启。 XCode搞砸了,并为我的项目显示了两个窗口。我看的那个没有控制台。