我有一个 NSTableView 正常工作,除非我正在编辑其中一个表格项目。如果用户仍处于编辑模式,并且按下 Sheet OK 按钮,则 tableiew 不会更新。
当用户按下确定按钮(closesheet)时,如何强制 tableview 提交更改。
另外,如何使用 ESC 键取消编辑?
对不起,如果这些问题看起来很荒谬,但我只在 Mac 上开发了一个月。
我有一个 NSTableView 正常工作,除非我正在编辑其中一个表格项目。如果用户仍处于编辑模式,并且按下 Sheet OK 按钮,则 tableiew 不会更新。
当用户按下确定按钮(closesheet)时,如何强制 tableview 提交更改。
另外,如何使用 ESC 键取消编辑?
对不起,如果这些问题看起来很荒谬,但我只在 Mac 上开发了一个月。
您应该可以调用[sheet makeFirstResponder:sheet]
,sheet
您将要关闭的工作表在哪里。这会将第一响应者的状态从文本字段中切换出来,这将导致它提交正在进行的编辑。
我遇到了同样的问题:如何将数据从 NSTextField 添加到核心数据属性,而无需在编辑 TextField 后按 Return 或 Tab?
似乎有不同的解决方案。如果您使用绑定将编辑表的 NSTextField 连接到 ArrayController,您可以在 Interface Builder 的 TextFields 值绑定中选中“持续更新值”。
其他解决方案在 Red Sweater 博客的这篇博文中得到了很好的解释:http ://www.red-sweater.com/blog/229/stay-responsive