为啥 AutoSuggestion 列表不会在 MFC 中按 Enter 关闭?
Posted
技术标签:
【中文标题】为啥 AutoSuggestion 列表不会在 MFC 中按 Enter 关闭?【英文标题】:Why AutoSuggestion List does not close on Enter in MFC?为什么 AutoSuggestion 列表不会在 MFC 中按 Enter 关闭? 【发布时间】:2012-09-07 12:26:00 【问题描述】:我有一个 MFC 对话应用程序。我在对话框中添加一个编辑控件并使用以下代码打开自动建议
SHAutoComplete(txtPath.m_hWnd, SHACF_FILESYS_DIRS);
一切正常。但是当我滚动建议列表并按 Enter 时,列表不会关闭。我怎样才能做到这一点?谢谢
【问题讨论】:
【参考方案1】:看看here:如何在对话框的编辑控件中使用 ENTER 键
【讨论】:
【参考方案2】:使用加速器捕捉按键并执行所需操作的最佳方式。 我将 Enter Key 行为修改为 Tab 键行为。
void CHDVRLauncherDlg::OnMyEnter()
int btnID = 0;
CWnd * pFocus = GetFocus();
if(pFocus != NULL)
btnID = pFocus->GetDlgCtrlID();
NextInTabOrder();
void CHDVRLauncherDlg::NextInTabOrder()
CWnd* pWndNext = GetNextDlgTabItem(GetFocus());
if(pWndNext)
pWndNext->SetFocus();
感谢回复。
【讨论】:
以上是关于为啥 AutoSuggestion 列表不会在 MFC 中按 Enter 关闭?的主要内容,如果未能解决你的问题,请参考以下文章