4

我有一个 NSTableView 正常工作,除非我正在编辑其中一个表格项目。如果用户仍处于编辑模式,并且按下 Sheet OK 按钮,则 tableiew 不会更新。

当用户按下确定按钮(closesheet)时,如何强制 tableview 提交更改。

另外,如何使用 ESC 键取消编辑?

对不起,如果这些问题看起来很荒谬,但我只在 Mac 上开发了一个月。

4

2 回答 2

3

您应该可以调用[sheet makeFirstResponder:sheet]sheet您将要关闭的工作表在哪里。这会将第一响应者的状态从文本字段中切换出来,这将导致它提交正在进行的编辑。

于 2010-01-23T21:15:04.310 回答
1

我遇到了同样的问题:如何将数据从 NSTextField 添加到核心数据属性,而无需在编辑 TextField 后按 Return 或 Tab?

似乎有不同的解决方案。如果您使用绑定将编辑表的 NSTextField 连接到 ArrayController,您可以在 Interface Builder 的 TextFields 值绑定中选中“持续更新值”。

其他解决方案在 Red Sweater 博客的这篇博文中得到了很好的解释:http ://www.red-sweater.com/blog/229/stay-responsive

于 2010-06-06T21:04:53.887 回答