|
|
Регистрация | << Правила форума >> | FAQ | Пользователи | Календарь | Поиск | Сообщения за сегодня | Все разделы прочитаны |
|
Опции темы | Поиск в этой теме | Опции просмотра |
#1
|
|||
|
|||
Контроль ввода данных
Имеются поля: Edit1, Edit2, Edit3
В поле Edit1 по умолчанию стоит ноль (чтобы пользователь сам вводил туда необходимые данные). Поле Edit3 рассчитывается делением данных из поля Edit2 на данные из поля Edit1. Пишу код if a(в данном случае Edit1)<=0 then MessageDlg('Ошибка ввода данных!',mtError,[mbOK],0); exit; При компиляции происходит следующее: 1.Если этот код вставить ДО расчета данных поля Edit3, то сообщение выдается, нажимаю OK, меняю ноль на любое положительное число, нажимаю кнопку Рассчитать, но расчета не происходит. 2. Если этот код вставить ПОСЛЕ расчета данных поля Edit3, то сообщение тоже выдается, но после нажатия OK на сообщении выдается ошибка (смотри вложенный файл). Сообщение об ошибке понятно, т.к. идет деление на ноль. Вопрос следующий: как сделать так, чтобы после нажатия OK на сообщении 'Ошибка ввода данных!' программа не выполнялась дальше, а чтобы пользователь ввел необходимые данные в поле Edit1 и только после этого пошел рассчет. Заранее спасибо |
#2
|
||||
|
||||
Код:
if a(в данном случае Edit1)<=0 then begin MessageDlg('Ошибка ввода данных!',mtError,[mbOK],0); exit; end; Понять, что хочет заказчик - бесценно, ведь он платит MasterCard |
#3
|
|||
|
|||
Все получилось. Спасибо.
|