gpt4 book ai didi

cocoa - NSOutlineView 具有拖放功能

转载 作者:行者123 更新时间:2023-12-03 17:36:54 26 4
gpt4 key购买 nike

我阅读了关于 Outlineviews 和 DND 的另一篇文章,但我无法让我的程序运行。这篇文章的底部是我的项目 zip 的链接。它非常基本,只有一个大纲 View 和按钮。我希望它接收放置在其上的文本文件,但我的代码或连接有问题。我尝试遵循 Apple 的 NSOutline 拖放示例代码,但我遗漏了一些东西。 1 个区别是我的程序是基于文档的程序,而他们的示例不是。我将文件的所有者设置为接收委托(delegate)操作,因为这是我处理拖放的代码以及按钮操作的位置。这可能是一个简单的错误,所以有人可以看一下它并告诉我我做错了什么吗?

最佳答案

您实现了 TableView 数据源拖动接收方法,而不是大纲 View 数据源拖动接收方法。大纲 View 是表格 View 的一种,但它只使用大纲 View 数据源协议(protocol); TableView 数据源协议(protocol)适用于 TableView 数据源,不适用于大纲 View 数据源。

参见the NSOutlineViewDataSource protocol有关您需要在数据源中实现什么的更多详细信息。

注意:您需要在数据源中实现这些方法,该数据源当前不是您的文档。我不知道你为什么这么做;通常,文档(主要作为 Controller )拥有模型,因此它应该是 View 的数据源——数据源。

我建议将 OutlineDataSource 类合并到 MyDocument 类中,并将 TableView 拖动接收方法更改为其大纲 View 对应方法。

关于cocoa - NSOutlineView 具有拖放功能,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2851647/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com