є помилкові обчислення. Втім, це не кращий варіант запобігти помилковий ввід, оскільки користувач дізнається про свою помилку тільки після того, як програма намагається використовувати введені дані. Краще, якщо користувач просто не зможе ввести неправильні символи. Наприклад, якщо ви хочете, щоб користувач міг вводити у вікно редагування
Edit тільки цифри і символ точки, ви можете в обробник події
OnKeyPress цього компонента вставити оператор:
if not (Key in [ 0 raquo ;.. 9 raquo ;, , ]) then Key:=# 0;
Цей оператор підмінить всі символи, крім цифр і коми, нульовим символом, яка не занесеться в текст вікна Edit .
Властивість MaxLength визначає максимальну довжину тексту, що вводиться. Якщо MaxLength=0 , то довжина тексту не обмежена. В іншому випадку значення MaxLength вказує максимальне число символів, яке може ввести користувач.
Властивість Modified , доступне тільки під час виконання, показує, чи проводилося редагування тексту у вікні. Якщо ви хочете використовувати цю властивість, то в момент початку роботи користувача з текстом Modified треба встановити в false . Тоді при подальшому звернення до цій властивості можна за його значенням ( true або false ) встановити, було чи не було вироблено редагування.
Властивість PasswordChar дозволяє перетворювати вікно редагування у вікно введення пароля. За замовчуванням значення PasswordChar дорівнює # 0 - нульового символу. У цьому випадку це звичайне вікно редагування. Але якщо у властивості вказати інший символ (наприклад, символ зірочки « * »), то при введенні користувачем тексту у вікні будуть з'являтися саме ці символи, а не ті, які вводить користувач Тим самим забезпечується таємність введення пароля.
Компонент MaskEdit відрізняється від Edit тим, що в ньому можна задати рядок маски у властивості EditMask . Маска складається з трьох розділів, між якими ставиться крапка з комою (;). У першому розділі - шаблоні записуються спеціальним чином символи які можна вводити в кожній позиції, і символи, що додаються самої маскою; у другому розділі записується 1 або 0 в залежності від того, треба чи ні, щоб символи, що додаються маскою, включалися у властивість Text компонента; в третьому розділі вказується символ, використовуваний для позначення позицій, в яких ще не здійснено введення. Прочитати результат введення можна або у властивості Text , яке в залежності від виду другого розділу маски включає або не включає в себе символи маски, або у властивості EditText , що містить введений текст разом з символами маски.
Таблиця 2.1
Символи шаблону маски
! Наявність символу «!» означає, що в EditText бракуючі символи предваряются пробілами, а відсутність символу «!» означає , що прогалини розміщуються в кінці. gt; Символ « gt;» означає, що всі наступні за ним символи повинні вводитися у верхньому регістрі, поки не скінчиться маска або поки не зустрінеться символ « lt; ». lt; Символ« lt; »означає, що всі наступні за ним символи повинні вводитися в нижньому регістрі, поки не скінчиться маска або поки не зустрінеться символ« gt; ». lt; gt; Символи « lt; gt;» означають, що аналіз регістра не проводиться. Символ «» означає , що наступний за ним символ є буквеним, а не спеціальним, характерним для маски. Наприклад, символ « gt;» після символу «» сприйметься як знак gt ;, а не як символ, що вказує на верхній регістр. L Символ «L» означає, що в даній позиції повинна побут буква. l Символ «l» означає, що в даній позиції може бути тільки буква або нічого. A Символ « А »означає, що в даній позиції повинна бути буква або цифра. a Символ« а »означає, що в даній позиції може бути буква, або цифра, або нічого. C Символ «С» означає, що в даній позиції повинен бути будь-який символ. c Символ «с» означає, що в даній позиції може бути будь-який символ або нічого. 0 Символ «0» означає, що в даній позиці...