NSOutlineView有2列

时间:2012-09-07 01:12:53

标签: cocoa nsoutlineview

我有一个NSOutlineView工作。到目前为止一切都很好。

现在我正在尝试为每一行添加复选框而没有太多运气。

如果我在位置0创建一个新列并将一个复选框控件拖入其中,我会在第一列中获得一个复选框控件,但第二列中不再显示文本。我将第2列设置为大纲列。

我得到回调以填充复选框列的行文本,但不会填充文本列(这可能就是为什么没有文本):

-(id)outlineView:objectValueForTableColumn:byItem:

如果我删除复选框列,则所有内容都会恢复正常工作。

另外,如果我只是从列中删除复选框控件,那么我会收到回调,询问第二列的文本。

将复选框添加到第一列中导致它没有第二列的文本是什么意思?

如果复选框是第一个或最后一个似乎并不重要,只需将其放在其中一个列中就可以使它无法工作。

如果我将静态文本控件添加到第二列,则会显示文本,但在编辑文本时,我不再收到-(id)outlineView:objectValueForTableColumn:byItem:的回调。

单击复选框时,我也没有收到任何回调,这可能是同样的问题。

不确定如何更好地解释这一点。以下是视图设置方式的屏幕截图:

enter image description here

1 个答案:

答案 0 :(得分:0)

我认为这样做的方法是使用基于视图的轮廓,并使复选框和同一视图的静态文本部分。

/Users/janicedelmar/Desktop/IB.tiff