可可+我应该使用哪些ui元素?

时间:2009-09-16 22:51:20

标签: cocoa user-interface

我正在开发一个带有文本字段框的应用程序。因此,当我输入文本时,它应该搜索数据库,并给我像谷歌搜索一样的建议。就像我输入字母'a'一样,它应该在文本字段下面有一个类似于所有名称以字母“a”开头的框。然后,如果我输入了字母'b',它应该调整框的大小并给出以'ab'开头的名称,依此类推。

我打算在文本字段下方使用一个表格视图,当在文本字段中输入新内容时,该视图会自动重新加载。但我不知道如何根据建议的数量调整表格视图的大小。那么还有其他适合这种情况的ui元素吗?

另外,我如何检测输入文本字段的新字母或数字,以便我可以过滤掉有任何此类通知的建议?我的意思是说我输入字母'a'所以现在文本字段的字符串值是'a',现在我输入说'b'。所以现在字符串值变为'ab'。我怎么检测到这个?我认为textDidChange通知会为我做这件事。

由于

2 个答案:

答案 0 :(得分:1)

您可以使用NSComboBox自动完成您描述的列表。 NSComboBox是NSControl的子类,因此您可以使用-controlTextDidChange:delegate方法来检测用户键入的文本中的更改。确保在Interface Builder中将控件设置为“连续”或调用[comboBox setContinuous:YES]。

答案 1 :(得分:0)

如果由于某种原因,您发现组合框不适合您的情况,您可以将完成列表实现为控件窗口的子窗口,其中包含无标题表视图。然后,您可以通过编程方式调整该窗口的大小,因为可能的完成次数会发生变化。