При инсталляции от пользователя требуется ввести лицензионный ключ, и я хочу немного облегчить ему задачу, ибо ключ слегка непрос (ок. 40 символов)
Как обычно, 5 текстовых полей, ограничения на вводимые символы. Предполагаю сделать так:
1. перехват WM_CHAR, если некорректный символ, символ не вводить в поле, вместо этого показывать баллун с описанием разрешаемых символов (EM_SHOWBALLOONTIP)
2. Поддержка вставки ключа из буфера. Вот тут я немного растерялси. Если юзер тыкает в первое поле, если у него в буфере правильный ключ, то все отлично.
Но, что делать, если:
а) если в буфере часть ключа?
б) если вставка проиходит не в первое поле?
в) если в буфере часть ключа и если вставка проиходит не в первое поле?
г) если в буфере полный ключ и если вставка проиходит не в первое поле?
д) если в полях уже есть какие то данные?
е) если вставленный ключ содержит неподдерживаемые символы?
ж) ...