Показать сообщение отдельно

  #3  
Старый 02.11.2008, 02:55
begin_end
Участник форума
Регистрация: 04.01.2007
Сообщений: 176
Провел на форуме:
17964969

Репутация: 1362
По умолчанию

Подмена символов, не являющихся цифрами - хорошее дополнение, хотя описываемую проблему не решает. Кроме этого в приведенном коде, минимально его модифицируя, следует сделать так:
Код:
procedure TForm1.Button1Click(Sender: TObject);
begin
 if (Edit1.Text<>'') and (Edit2.Text<>'') and (Edit3.Text<>'')and (Edit4.Text<>'') then
  begin
   Label9.Caption:='Спасибо за использование!';
   a:=StrToInt(Edit1.Text);
   b:=StrToInt(Edit2.Text);
   c:=StrToInt(Edit3.Text);
   d:=StrToInt(Edit4.Text);
   e:=1-d/100;
   f:=b/a*c*e;
   g:=b/a*c;
   Label6.Caption:=FloatToStr(f);
   Label8.Caption:=FloatToStr(g);
  end else ShowMessage('Все поля обязательны к заполнению');
end;
Ошибка "' ' is not a valid integer value" в указанном случае более не вылезет, хотя может появиться при вставке любого текста из буфера обмена в поля (м.б. еще дополнительно вводить проверку?).
 
Ответить с цитированием