Я думаю, вам лучше создать подкласс CEdit и ограничить фильтрацию нажатий клавиш. Я полагаю, что сложная часть не позволяет пользователю переместить каретку в область приглашения, но вы, вероятно, можете написать некоторый код, чтобы убедиться, что каретка всегда отправляется туда, где она принадлежит (входная часть).
В любом случае, если вы действительно, действительно хотите реализовать свой собственный элемент управления (это не так сложно в конце концов), я рекомендую вам прочитать «техническую документацию» Джейкоба Навиа о том, как он создавал компилятор LCC и среду. На самом деле, похоже, что документы больше не в сети, но я уверен, что вы можете получить их по электронной почте (jacob@jacob.remcomp.fr).
Редактировать : Ваш предыдущий пример мне понравился больше. Держите это стильно, LOL:)