CDockablePane和加速器

时间:2018-05-23 06:10:31

标签: mfc-feature-pack

在我的MFC MDI应用程序中,我有CDockablePanes。

在CDockablePane中,我有编辑控件和列表控件。

例如,如果用户在应用程序的编辑控件中键入文本,并按下删除键,而不是像正常一样删除字符,则会将ID_EDIT_DELETE命令发送到活动视图,从而导致删除所选对象。 我怎样才能解决这个问题?

我想我需要覆盖PreTranslateMessage,并在传递之前检查哪个窗口有焦点,但我真的不知道在PreTranslateMessage中该做什么。

1 个答案:

答案 0 :(得分:0)

我覆盖了CDockablePane派生类中的PreTranslatemessage函数,并添加了下面的代码,它对我有用。

BOOL CMyDockablePane::PreTranslateMessage(MSG* pMsg) 
{

  if(IsDialogMessage(pMsg))
    return true;

return CDockablePane::PreTranslateMessage(pMsg);
}