2012-04-14 3 views
0

Я подклассифицирую элемент управления редактирования, и я ищу сообщение, которое я мог бы перехватить, чтобы позволить мне загладить первую букву в поле.
WM_KEYDOWN и WM_CHAR, похоже, не имеют ничего, что идентифицирует случай символов.Подкласс EDIT control

В настоящее время у меня есть эта полуработающая обработка, обрабатывая сообщение EN_UPDATE в родительском окне, но поскольку я уже подклассифицирую элемент управления редактированием, я бы предпочел сделать это в подклассе proc.

Любая помощь приветствуется и благодарит заранее.

+0

Использование одного из уведомлений ('EN_CHANGE') - это действительно путь. Если вы использовали нормальную структуру окон, которая отражала уведомления от родителя до исходного элемента управления, тогда все будет в порядке. –

ответ

2

Нет, WM_CHAR определенно дает вам случай. WM_KEYDOWN нет. Однако это не решает вашу проблему, вам также нужно иметь дело с WM_PASTE. Использование EN_UPDATE в порядке, оно отправляется в обоих случаях, просто следите за рекурсией. И лаваша родителя, получающего его, такая проблема, которую решает любая библиотека классов.

Смежные вопросы