在编辑之前更改NSTableView中的单元格内容

时间:2010-09-09 17:17:26

标签: cocoa nstableview

我有一个NSTableView,允许在其中一个单元格(NSTextFieldCell)上进行内联编辑。这实际上运作良好,但重点是:我想操纵编辑会话的内容。 想象一下,将一个带有路径的字符串(例如:“folder / subfolder / myfile.txt”)作为此类单元格的内容。但是当用户进入该单元格的编辑模式时(例如通过双击)我只希望字符串“myfile.txt”可编辑(即出现在编辑器中)。

有人有提示吗?

感谢阅读。 问候, 托比

1 个答案:

答案 0 :(得分:1)

您可以创建执行此操作的自定义NSFormatter。覆盖方法stringForObjectValue:以返回完整字符串,并editingStringForObjectValue:仅返回要编辑的部分。您还需要编写方法getObjectValue:forString:errorDescription:以将编辑后的字符串转换回完整字符串。如何准确地执行此操作取决于您的程序的其余部分。你不知何故需要取回你删除的字符串部分进行编辑。