首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何在IntelliJ插件上使用代码完成?

如何在IntelliJ插件上使用代码完成?
EN

Stack Overflow用户
提问于 2016-01-19 13:37:27
回答 1查看 682关注 0票数 4

我正在IntelliJ上开发一个插件。我有这样的问题:

据我们所知,如果我们键入一个关键词,IntelliJ将使用它的代码完成给出我们的提示,如图片所示。

现在,我在IntelliJ上的插件中有了一个IntelliJ,它需要这样的功能:当我向JTextField填充一些单词时,它将提供代码完成技巧,如图片所示。IntelliJ是否有一些开放的api来做到这一点?我做了很多工作来研究如何做到这一点。但一无所获。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2016-01-19 15:08:17

对于JTextField,IntelliJ IDEA没有这样的API。IDEA的完成需要IDEA的编辑才能工作。您可以使用EditorFactory创建一个(并且不要忘记在不需要它之后从同一个EditorFactory中释放它)。如果您的编辑器是一行,您可能会考虑使用EditorTextField,这会使事情变得更简单。这两种方法都有getComponent()方法,它们返回可以嵌入到GUI中的常用Swing组件。

然后,您可以使用LookupManager方法手动显示/隐藏/处理弹出窗口,或者依赖通用的IDE完成机制,它将自动完成许多事情。但是后者要求您将编辑器的文档与PsiFile (可能是纯文本文档,参见PsiFileFactory.createFileFromText)关联起来,并创建一个CompletionContributor,该CompletionContributor将根据文件中的位置提供建议变体。

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/34878249

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档