Delphi 提示添加到 Uses 中

3

我刚从Delphi XE升级到Tokyo,希望获得一些更新的IDE功能。

一个很好的功能是自动提供向uses子句添加单元的选项。例如,如果您在代码中引用了某些东西,但它不在uses子句中,那么如果IDE提示您添加相关的单元,这将是很好的。

例如,为了简单起见,在IntelliJ中,您可能会声明一个Button,但尚未将关联库添加到Import子句中。

例如IntelliJ/Android Studio

当发生这种情况时,会突出显示有问题的行(就像在Delphi中一样),但IDE会让您使用Alt-Enter添加必要的库。如果有多个库(它知道它们),它将提示您选择所需的库。

Delphi有类似的功能吗?


@Rudy,确保存在一个已知类型的库将是很好的,这些库可以从库路径中可用的单元中获取。这可能是intelliJ使用此方法的原因。对于其他类型,例如本地定义的类型,可以从项目代码/可用路径中获取。 - sse
@Rudy:如果你看一下,我已经回答了下面关于IDE的问题。我提到了[help]中未来参考的内容(因为它应该从这篇文章中删除)。谢谢,我知道这个网站是如何工作的。 - Ken White
@KenWhite:我并没有暗示您不知道该网站如何工作,只是您的评论暗示您对问题的解释与我不同(即他正在寻求第三方工具)。 - Rudy Velthuis
@Rudy:在帖子中提出的唯一问题(如原文所写-请参见历史记录-我已经发表了评论)是要求第三方工具。编辑后的版本询问“Delphi中是否有类似的东西?”,这在这里是完全适当的。如果发布者似乎不知道什么是适当的或不适当的问题,那么对于该问题的建议也是完全适当的。 - Ken White
我刚刚查看了历史记录。他并不只是要求一个第三方工具。据我所见,他的问题是:“我知道这个IDE,IntelliJ,它有这个很好的功能。Delphi是否有类似的功能,如果没有,是否有插件可以提供它?”。我认为这是合理的。 - Rudy Velthuis
显示剩余4条评论
1个回答

7
Delphi 2007及更高版本支持大多数已知类型(在搜索或库路径中)。 (可能在D2005 / 2006中可用;我现在没有安装它们来检查。 我知道它不在Delphi 7中。)输入类型,然后使用重构菜单(重构->查找单元)或按Ctrl + Shift + A。以下是一个例子:

![Find unit dialog

虽然不是100%有效,但与旧方法相比,它是一个巨大的改进。

(是的,我知道有关 TArray<string> 的信息,在有人提醒之前我只是抓取了一个我知道不会在默认的VCL表单使用条款中的类型作为示例。)


@Rudy:我不确定它会或不会搜索哪些内容。在我使用的示例中,它找到了System.Types,但它并没有被列在uses子句中。我只有文档和某个博客文章(我暂时想不起来在哪里,但我会尽力找到它)。 - Ken White
@Rudy:实际上,Berlin文档有一个更好的描述,但它仍然不太清楚它会在哪里查找。 - Ken White
据我所知,它只查找当前项目中直接使用的单元。我在一个DUnit项目中尝试过,但它仍然没有找到TButton,尽管我确定该项目有按钮。 - Rudy Velthuis
1
这个功能不是从IDE开始就有了吗?它肯定是在Delphi 2007中可用的(而且在Delphi 7中没有)。 - dummzeuch
@dummzeuch:是的,它已经存在一段时间了。但我不能确定它是什么时候添加的,因为我这台机器上只有Seattle及以上版本。我打算星期一去上班时检查D2007和其中一个XE版本,然后进行编辑。 - Ken White
显示剩余4条评论

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接