MFC SDI Текстовый редактор
Я создаю приложение в стиле проводника MFC SDI (в нем есть разделительная панель, правая панель - область редактирования текста, левая панель - древовидная)
Моя правая панель - это CRichEditView.
Я хочу быть в состоянии определить, когда пользователь отредактировал текст так, чтобы был установлен флаг, показывающий, что изменение было сделано, но не было сохранено. Я пробовал несколько способов сделать это, например, перехват WM_KEYDOWN в PreTranslateMessage, но это ловит все и мешает нажатию клавиш редактировать представление. Я также попытался добавить ON_WM_KEYDOWN() к карте сообщений в MyView.cpp. Опять же, это, кажется, предотвращает какое-либо влияние клавиш на текст в представлении. Я хочу позволить пользователю редактировать текст в представлении, но приложение должно знать, что это было сделано.
Пожалуйста, помогите - я часами искал способы сделать это.
Большое спасибо
1 ответ
Добавление ON_WM_KEYDOWN() к карте сообщений, вероятно, является правильным подходом. Вы должны убедиться, что ваша реализация метода OnKeyDown() вызывает метод базового класса, чтобы сообщение передавалось соответствующим образом.