| Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
| Форум программистов > Delphi: Общие вопросы > проверка заполнения edit'ов |
| Автор: WERITAS 29.4.2006, 14:44 |
| Есть форма, а на ней три Edit'а, в которые вводятся данные float'овского типа. Каким образом осуществить проверку, что все ли поля заполнены? |
| Автор: Albinos_x 29.4.2006, 15:15 | ||
|
| Автор: WERITAS 29.4.2006, 16:11 | ||
| Я так пробовал, компилятор выдает ошибку Operator not applicable to this operand type Я делал так:
|
| Автор: Albinos_x 29.4.2006, 17:04 | ||
|
| Автор: Sunvas 29.4.2006, 18:36 | ||
Как вариант, если эдитов будет уж слишком много:
|
| Автор: WERITAS 29.4.2006, 20:30 |
| Albinos_x Ваш вариант я также прорабатывал - та же ошибка. Sunvas, Спасибо, помогло |
| Автор: Albinos_x 30.4.2006, 07:12 |
значит не првильно пробовали... у меня всё работает... form2. здесь не причём.... |
| Автор: WERITAS 30.4.2006, 07:12 | ||
Дык низзя form2 убирать! Я этот код пишу в обработчике, который вообще к form1 относится. |
| Автор: Sunvas 1.5.2006, 01:37 |
А ты свое приложение компилил или WERITAS-а? Ведь разница-то возможна! |
| Автор: Albinos_x 1.5.2006, 08:12 | ||
разница в том, что компилятор без скобок считает
за одну операцию, расставление скобок решает эти проблемы... всё компилится без проблем... |
| Автор: WERITAS 1.5.2006, 09:08 |
| Albinos_x, Вот теперь скомпилилось (когда вы отредактировали свое сообщение). но это уже не столь важно. Вопрос закрыт. Всем спасибо за помощь! |
| Автор: Albinos_x 1.5.2006, 09:28 | ||||
хех... я всего лишь сделал из пробела, который у Вас стоял изначально: ' ' пустое значение '' она на компиляцию не влияет... влияет только на результат... т.е. при пустой строке, он бы ничего не выдал бы.... и отредактировал я почти сразу же:
через 4 минуты, т.к. трафик сильно тормозил... так, что ошибка была не в этом |
| Автор: Scolopendra 5.5.2006, 13:07 |
| По моему if Edit1.Text='' может привеcти к ошибке, если вы например ввели пробел в ваш Edit. Он уже <>'' , а на самом деле ничего не введено. Я обычно делаю так: if Length(Trim(Edit1.Text))=0 then ... |
| Автор: Sunvas 6.5.2006, 07:39 | ||
Ну если пробел, это для тебя ничего.. А если пользователь поставит точку, прочерк, знак восклицания ведь это тоже не будет нести смысловой нагрузки! Тут уж нужно заняться фильтрацией ввода, а не проверкой на заполненность эдитов. |
| Автор: RTV 6.5.2006, 13:51 | ||
для проверки правильности ввода |
| Автор: Cheburek 6.5.2006, 16:45 |
| RTV, А если едитов очень много? Можно ли как-нибуть извернуться что бы код поменьше написать? |
| Автор: Ryn 6.5.2006, 17:00 |
| edit1.OnKeyPress := Edit7KeyPress; edit2.OnKeyPress := Edit7KeyPress; ... и т.п. или во вкладке events для каждого едита в OnkeyPress выбрать процедуру Edit7KeyPress |
| Автор: Yanis 6.5.2006, 17:46 |
| По моему удобнее написать компонент, который будет удовлетворять нужным требованиям, если требуется его массовое использование. |