Показать сообщение отдельно
  #21  
Старый 06.08.2011, 10:44
Vocabulary Vocabulary вне форума
Новичок
 
Регистрация: 17.09.2009
Сообщения: 85
Репутация: 9
По умолчанию

В предложенном коде есть логическая ошибка:
В процедуре Edit1Change программа НИКОГДА не выполнит код, который записан по альтернативной ветке (else) в условии if length(s)=1 then.
Здесь, видимо, нужно иметь два объекта ввода: один для односимвольного ш-к, другой для многосимвольного.
В первом, да, можно обработку введенного кода делать по событию OnChange, где в конце автоматом переводить фокус ввода на второй едит.
Во втором придется обработку введенного ш-к вешать на событие OnExit.
Или, так же, в событии OnChange проверять количество введенных символов и только по достижении определенного количество записывать их в другой компонент. Только потом очищать едит.

---
Ошибка там сопряжена с тем, что в файле dfm имя объекта TRichEdit не определено (пустое). Надо просто указать это имя - RichEdit1.
Ответить с цитированием