下面是个Vc6中实现CComboBox的自动完成功能教程,撑握了其技术要点,学起来就简单多了。赶紧跟着图老师小编一起来看看吧!
【 tulaoshi.com - 编程语言 】
提升用户输入效率的最佳做法之一是,为TextBox 与 ComboBox 控件加入自动完成功能。所谓自动完成功能,也就是当用户在输入某一个词句的时候,与已经输入的句首或词首相符的词句就会自动填入或显示出来让你选择。比如现在的google搜索的时候,你随便输入一点东西,会弹出与你输入最相近的一些搜索关键字。在.net中这个功能是很容易的,已经有相应的属性可以供使用。在vc6.0中好像没有,似乎没有这个功能。
使用以下代码可以简单的实现这个功能:
对ComboBox控件添加CBN_EDITCHANGE消息的处理函数,也就是当有输入发生改变的时候,自动调用该函数
添加代码如下:
假设ComboBox控件变量是 m_cbUserName, 临时变量 CString strTmp;则:
m_cbUserName.GetWindowText(strTmp);
(本文来源于图老师网站,更多请访问http://www.tulaoshi.com/bianchengyuyan/)int iLen = strTmp.getlength();
//...如果ilen=0可以直接返回
(本文来源于图老师网站,更多请访问http://www.tulaoshi.com/bianchengyuyan/)if(m_cbUserName.FindSTring(-1, strTmp) != -1)
{
m_cbUserName.SelectString(-1, strTmp);
}
m_cbUserName.SetEditSel(ilen,-1);
唯一的缺陷就是,如果你的列表中有王二小,而你又只想输入 王二 的话......
来源:http://www.tulaoshi.com/n/20160219/1622983.html
看过《Vc6中实现CComboBox的自动完成功能》的人还看了以下文章 更多>>