MFC-MFC如何实现自动补全和智能提示功能?
就像windbg命令输入框那种效果,输入!ht会提示或者自动补全为!htrace,应该用哪一个控件?怎样实现呢?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
就像windbg命令输入框那种效果,输入!ht会提示或者自动补全为!htrace,应该用哪一个控件?怎样实现呢?
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
接受
或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
发布评论
评论(4)
AutoCombox 这个类相信对你有用,你可以看看
http://www.pudn.com/downloads355/sourcecode/windows/control/combobox/detail1544520.html
我找到了一个实现方案,效果很不错,支持的匹配方式还挺多的:
AutoComplete without IAutoComplete
MFC没有这种控件,要实现这样的功能需要自己实现,具体的实现原理如下:
重载一个CEdit的控件。
在自己重载的CEdit控件的OnTextChange事件。
在OnTextChange事件中,重新获取控件中输入的文字。
利用获取的文字到数据库中按照字符的顺序模糊匹配。
找到匹配度最高的单词。
将匹配的单词提示给用户。
提示用户的方式可以采用直接输入到Edit控件中,也可以通过下来菜单的方式实施显示所有的结果,这个看具体的需求。
可以使用SHAutoComplete控件,这里有一个完整的使用教程,可以参考一下。http://blog.csdn.net/CathyEagle/article/details/605054