只能移动NSTableView的几列

时间:2010-07-04 19:07:26

标签: objective-c cocoa

在iTunes中,您会看到前两列(第一个不包含任何内容的第一列)和第二列包含歌曲名称的列不可移动。其他人都是可移动的。

如何使用NSTableView实现此目的?

2 个答案:

答案 0 :(得分:3)

实施NSTableViewDelegate方法tableView:shouldReorderColumn:toColumn:来控制此行为。来自documentation

  

当用户最初拖动列时,首先使用newColumnIndex值 -1 调用该委托。返回 NO 将禁止该列重新排序。返回 YES 可以重新排序,当列到达新位置时,将再次调用该委托。

答案 1 :(得分:1)

在表格视图的委托中,回复the tableView:shouldReorderColumn:toColumn: message。请参阅该链接中的文档,了解您的实施必须完成的任务。