• 🔥 Бесплатный курс от Академии Кодебай: «Анализ защищенности веб-приложений»

    🛡 Научитесь находить и использовать уязвимости веб-приложений.
    🧠 Изучите SQLi, XSS, CSRF, IDOR и другие типовые атаки на практике.
    🧪 Погрузитесь в реальные лаборатории и взломайте свой первый сайт!
    🚀 Подходит новичкам — никаких сложных предварительных знаний не требуется.

    Доступ открыт прямо сейчас Записаться бесплатно

Обработка данных и ошибок в Edit

  • Автор темы Автор темы Intersap
  • Дата начала Дата начала
Статус
Закрыто для дальнейших ответов.
I

Intersap

Пусть в поле Edit вводится число в пределах от Min до Max. Обработку ошибки от ввода букв я сделал, а не подскажите как сделать обработку чтобы если число не попадает в диапазон программа дальше не работала, а просила перезадать число. Спасибо. Тривиальный пример:
Код:
procedure TForm1.Button1Click(Sender: TObject);

var u: real; //

begin

Label1.Caption := ' ';

try

u := StrToFloat(Edit1.Text);

except

on EConvertError do

begin

Edit1.Text:='';

exit;

end;

end;

Label1.Caption := FloatToStr(u);

end;

end.
 
> Обработку ошибки от ввода букв я сделал

Не сделал ты ее)
Ничто не мешает юзеру вставить в Edit ошибочную строку из буфера обмена, при этом OnChange не возникнет и твоя программа тут же облажается.
 
> Обработку ошибки от ввода букв я сделал

Не сделал ты ее)
Ничто не мешает юзеру вставить в Edit ошибочную строку из буфера обмена, при этом OnChange не возникнет и твоя программа тут же облажается.

Причем тут OnChange я не очень понимаю, если обоработка ведется при нажатии кнопки , т.е. постфактум.

Intersap сказал(а):
Пусть в поле Edit вводится число в пределах от Min до Max. Обработку ошибки от ввода букв я сделал, а не подскажите как сделать обработку чтобы если число не попадает в диапазон программа дальше не работала, а просила перезадать число. Спасибо.

добавить условия
Код:
try

u := StrToFloat(Edit1.Text);
if (u>=min)and(u<=max) then 
begin
//непосредственно что делает прога после нажатия кнопки
end;
 
Статус
Закрыто для дальнейших ответов.
Мы в соцсетях:

Взломай свой первый сервер и прокачай скилл — Начни игру на HackerLab