3

我有一个NSTableView包含两列的数据源和一个用数据填充它的数据源。那部分有效。

如何获取数据(NSString格式)NSTableView?我可以获得选定的行,但NSTableView似乎没有访问数据的方法。

从我的数据源获取数据似乎返回了无用的数据(类型 idNSLog()并且NSRunAlertPanel()两者都声称数据不是类型NSString.

从 中获取数据的最简单方法是NSTableView什么?

更新:

原来从我的数据源获取数据失败的原因与返回是方法中的NSString一部分有关。NSArraytableView()

我的输入文件包含我为表格视图中的列拆分的行。获取正确的NSTableView数据,但是当我自己调用该tableView()方法时,我遇到了EXC_BAD_ACCESS错误,我认为这与内存管理有关。

另一个更新:

这不是内存管理。这是我的应用程序无法识别NSTableColumn它想要的。我编写了第二种手动访问数据的方法,该方法使用 int 作为列而不是 aNSTableColumn并且有效。

4

1 回答 1

9

使用表(视图)作为存储数据(模型)的地方违反了 MVC 范式。您应该能够以与表格视图相同的方式从数据源中获取值;你的代码tableView:objectValueForTableColumn:row:做什么来获取数据?

如果您的表格是可编辑的,您将收到来自表格视图的调用,tableView:setObjectValue:forTableColumn:row:以允许您适当地修改您的数据源。

于 2010-02-07T20:29:50.103 回答