MFC-在动态工具栏上设置焦点,然后按Enter键应用程序是否关闭

MFC-在动态工具栏上设置焦点,然后按Enter键应用程序是否关闭,mfc,Mfc,我有一个由代码创建的工具栏(动态使用CToolBarCtrl)。 然后我添加了一些按钮。 现在,通过运行应用程序,它将显示工具栏及其按钮。 之后,我使用TAB将焦点设置为工具栏中的一个按钮,该按钮工作正常。 如果我按Enter键,我的整个应用程序就会关闭 你知道这个问题吗?也许你已经得到了肯定的答案,但我想发布一个答案,以备将来使用 BOOL CClassName::PreTranslateMessage(MSG* pMsg) { if(GetAsyncKeyState(VK_RETUR

我有一个由代码创建的工具栏(动态使用CToolBarCtrl)。 然后我添加了一些按钮。 现在,通过运行应用程序,它将显示工具栏及其按钮。 之后,我使用TAB将焦点设置为工具栏中的一个按钮,该按钮工作正常。 如果我按Enter键,我的整个应用程序就会关闭


你知道这个问题吗?

也许你已经得到了肯定的答案,但我想发布一个答案,以备将来使用

BOOL CClassName::PreTranslateMessage(MSG* pMsg)
{
    if(GetAsyncKeyState(VK_RETURN))            //getting enter key pressed
    {
        return FALSE;
    }
    return CDialog::PreTranslateMessage(pMsg);
}

你做过调试吗?如果是,您尝试过什么?如果您的应用程序基于
CDialog
,则无论焦点如何,
ENTER
都将关闭对话框。这是默认行为。如果是这种情况,则需要重写
CDialog::OnOK()
,而不执行任何操作。