我需要在具有搜索功能的的Windows MFC应用程序的组合框。它应该工作,这样,如果你开始输入,列表中匹配一个或多个项目的东西,组合框应该下拉并显示这些项目。有点像在网络上流行的基于Ajax的搜索框

你 - 提供此功能的任何控制的知道吗? - 对如何创建自己这样的功能链接到的信息? - 对如何做到这一点的想法,你可以分享

有帮助吗?

解决方案

发现这一点:

http://www.codeguru.com/cpp/控制/组合框/ article.php / c1807 /

改名类,因为现在CComboBoxEx是MFC的一部分,并且在OnEditUpdate()。

加入ShowDropDown()调用

其他提示

这是一个Win32 API的常见问题。 见进阶Win32 API的纳克新闻://194.177.96.26/comp.os.ms-windows.programmer.win32 (你并不需要在所有CBN_EDITCHANGE,它是自动与API)

完全访问组合框的编辑框:

CEdit *pEdit = (CEdit *)pComboBox->GetWindow(GW_CHILD);
  

的CEdit * PEDIT =(CEdit的*)pComboBox-> GetWindow(GW_CHILD);

我可以以类似的方式访问列表框的一部分?需要清除列表中的内容,例如使用ResetContent。

提供CBN_EDITCHANGE事件的处理程序,处理程序willö被称为每次用户更改在编辑字段中的文本的时间。

在此处理程序,调用CComboBox::FindString()方法,看看您的任何组合框的条目存在键入的文本。如果确实如此,呼叫CComboBox::SetCurSel()来选择它。

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top