在NSTableView中控制编辑

时间:2018-09-13 12:22:01

标签: macos nstableview

我已经将NSTableView和NSTableColumn子类化了,我想控制表格单元格版本的进程。

我的表类有2种状态:版本和非版本。 无论表的状态如何,当用户选择一行时,该行都必须突出显示。

如果该表处于状态版本,则与所选行相对应的控件必须可见。

我使用功能行视图来实现这一点,但是我没有成功。 1当我单击一个单元格的文本单元格时,该控件始终出现。 2当调用rowview函数时,我不了解row参数的值。有时它是正确的,有时它是不正确的。

有人可以帮我吗?

1 个答案:

答案 0 :(得分:0)

我想精确:为了简单起见,在我的子类NSTableView中,我编写了这段代码: override func rowView(atRow row: Int, makeIfNecessary: Bool) -> NSTableRowView? { let aRow = super.rowView (atRow: row, makeIfNecessary: makeIfNecessary) if aRow != nil { Swift.print("rowview is called for row (row)") } return aRow }

当我单击第0行时,将得到以下结果:“ 第1行需要行视图” 然后,当我单击第1行时:“ 第1行称为行视图,第0行称为行视图”第2行称为行视图”