Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/xpath/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Delphi 带自动完成/建议列表的TEdit_Delphi_Autocomplete - Fatal编程技术网

Delphi 带自动完成/建议列表的TEdit

Delphi 带自动完成/建议列表的TEdit,delphi,autocomplete,Delphi,Autocomplete,我一直在想,是否有一个TEdit组件具有类似于jQuery autocomplete的自动完成功能: 我想附加一个函数,它将通过类似命令的许多字段通过数据库进行搜索。然后我会返回匹配记录的列表。也许是一些DevExpress组件?我正在考虑创建自己的组件(例如TEdit下面的无边框表单)底层编辑控件支持此功能,如文档中所述:和 这对您来说有点棘手,因为您需要编写自己的自动完成源代码。这将涉及大量的COM编程。我不知道有任何著名的VCL包装器可以为您简化这一过程。我建议你从MSDN链接中的C++代

我一直在想,是否有一个TEdit组件具有类似于jQuery autocomplete的自动完成功能:


我想附加一个函数,它将通过类似命令的许多字段通过数据库进行搜索。然后我会返回匹配记录的列表。也许是一些DevExpress组件?我正在考虑创建自己的组件(例如TEdit下面的无边框表单)

底层编辑控件支持此功能,如文档中所述:和


这对您来说有点棘手,因为您需要编写自己的自动完成源代码。这将涉及大量的COM编程。我不知道有任何著名的VCL包装器可以为您简化这一过程。我建议你从MSDN链接中的C++代码开始,让它工作。您更可能找到基于C++代码的现成示例。一旦你能用C++完成这一点,翻译成Delphi就应该相对简单了。

< P>使用“MRU编辑”或“查找组合框”

这样的东西,很多组件都是为了这个目的而存在的,所以添加自己似乎有点太复杂了。(另外:如果我的记忆在D7早期没有出现问题,当时没有特定的组件用于此目的,我们使用了带有csSimple sytle或类似内容的组合框。)或者这个,我希望有一个组合框用于此(从用户体验的角度)。一个组合框,其中的项目按编辑中的内容过滤。有时我会忘记我想要搜索的内容,而jQuery自动完成编辑会让我迷失方向。你将无法使用
iautomplete
实现全文搜索(jQuery组件的功能)。它从一开始就与文本匹配;这就是为什么我写了一堆难看的代码(作为一个例子)。