如何在qt中实现代码完成[关闭]

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了如何在qt中实现代码完成[关闭]相关的知识,希望对你有一定的参考价值。

我正在使用qt(在c ++上)编写一个ide,我需要为它添加自动完成功能

所以我想知道:

怎么做(我使用qtPlainTextEdit)?

我应该使用什么数据结构?

答案

我想你应该看看这个: http://qt-project.org/doc/qt-4.8/tools-customcompleter.html

我用这个例子来理解CodeCompletion,我觉得很好:)

[编辑] Qt有一个自己的类叫做QCompleter:http://qt-project.org/doc/qt-4.8/qcompleter.html

另一答案

我还需要在Qt中编写代码完成者,Tobias提供的第一个链接是要查看的文档。它全面而清晰,为我工作。我相信你会为你工作。

如果你需要在lineEdit中使用代码完成器,那么它非常简单(来自QCompleter文档):

QStringList wordList;
wordList << "one" << "two" << "three" << "four" << "five";
QLineEdit *lineEdit = new QLineEdit(this);

QCompleter *completer = new QCompleter(wordList, this);
lineEdit->setCompleter(completer);

但是,QPlainTextEdit或QTextEdit没有内置的setCompleter()成员函数,因此您必须遵循custom code completer教程。

另一答案

这是一个很大的复杂功能。我会看看它是如何在the Qt Creator完成的。

以上是关于如何在qt中实现代码完成[关闭]的主要内容,如果未能解决你的问题,请参考以下文章

如何在 Qt 中实现基于 GStreamer 的视频小部件?

在 qt 中实现 GUI Shell

Android Studio:如何从 Fragment 在 ActionBar 中实现后退按钮

在 webview 片段中实现后退按钮

如何在 spark scala 中实现 uniqueConcatenate、uniqueCount [关闭]

如何在bash终端中实现CTRL-R(反向搜索)?