放弃NSTableView行为

问题描述 投票:5回答:1

我有一个NSTableView,我已经成功实现了tableView:validateDrop:proposedRow:proposedDropOperation:tableView:acceptDrop:row:dropOperation:

我不需要tableView:writeRowsWithIndexes:toPasteboard:,因为这是用于将对象拖出NSTableView。

现在,问题在于我希望它表现得像iTunes一样。在iTunes 9.x中(我不记得以前的版本)你有一个NSTableView(播放列表),当你将文件拖到它上面时,你会在NSTableView中获得这个蓝色焦点(也许是NSScrollView?)而你没有指示您要插入对象的位置的蓝色水平线。所以基本上我想:

  • 将文件悬停在NSTableView上时,行之间没有蓝色水平插入行。
  • NSTableView(或NSScrollView)中的蓝色焦点。

非常感谢任何帮助,所以提前谢谢你。

cocoa drag-and-drop itunes nstableview
1个回答
7
投票

来自NSTableView reference

- (void)setDropRow:(NSInteger)row dropOperation:(NSTableViewDropOperation)operation

....

“为行传递值-1,并且NSTableViewDropOn作为操作导致整个表视图突出显示而不是特定行。如果接收方显示的数据不允许用户删除特定项目,则此选项很有用行位置“

© www.soinside.com 2019 - 2024. All rights reserved.