CDockablePane и ускорители - PullRequest
0 голосов
/ 23 мая 2018

В моем приложении MFC MDI у меня есть CDockablePanes.

В CDockablePane's у меня есть элемент управления для редактирования и управления списком.

Например, если пользователь печатает текст в элементе управления для редактирования в приложениии нажимает клавишу удаления, вместо удаления символа, обычного, она отправляет команду ID_EDIT_DELETE в активное представление, вызывая удаление выбранных объектов.Как я могу это исправить?

Я думаю, что мне нужно переопределить PreTranslateMessage и проверить, какое окно имеет фокус, прежде чем передавать его, но я действительно не знаю, что делать в PreTranslateMessage.

1 Ответ

0 голосов
/ 23 мая 2018

Я переопределил функцию PreTranslatemessage в производном классе CDockablePane, добавил код ниже, и он работает для меня.

BOOL CMyDockablePane::PreTranslateMessage(MSG* pMsg) 
{

  if(IsDialogMessage(pMsg))
    return true;

return CDockablePane::PreTranslateMessage(pMsg);
}
...