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

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

现在,问题是我希望它的行为类似于iTunes。在iTunes 9.x中(以前的版本我不记得了),您有一个NSTableView(播放列表),将文件拖到它上面时,您会在NSTableView内看到这个蓝色的焦点(也许是NSScrollView?),并且没有蓝色的水平线指示您将在何处插入对象。所以基本上我想:

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

  • 任何帮助将不胜感激,所以在此先感谢您。

    最佳答案

    NSTableView reference:

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

    ....

    “为行传递–1的值,并且将NSTableViewDropOn作为操作传递,将突出显示整个表 View ,而不是特定的行。如果接收方显示的数据不允许用户在特定的位置放置项目,这将非常有用行位置”

    关于cocoa - 放下NSTableView行为,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/2212904/

    10-11 22:02