Показать сообщение отдельно
  #4  
Старый 30.03.2008, 09:36
MSD MSD вне форума
Прохожий
 
Регистрация: 29.03.2008
Сообщения: 35
Репутация: 10
По умолчанию Еще вопросик

и еще вопросик написал програмку которая складывает все числа в Edit с параметром Tag=1, компилируется нормально, но после того как жмешь кнопочку сложить вылетает с ошибкой....

Project Project1.exe raised exception class EConvertError with message "" is not valid floating point value.

Код HTML:
unit Unit1; interface uses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, StdCtrls; type TForm1 = class(TForm) Button1: TButton; Edit1: TEdit; Edit2: TEdit; Edit3: TEdit; Edit4: TEdit; Edit5: TEdit; procedure Button1Click(Sender: TObject); private { Private declarations } public { Public declarations } end; var Form1: TForm1; implementation {$R *.dfm} procedure CalculateSum(f:TForm; ed:TEdit); procedure ChangeDotToComma(var s:string; pp:integer); begin Delete(s,pp,1); Insert(',',s,pp); end; procedure ChangeCommaToDot(var s:string; pp:integer); begin Delete(s,pp,1); Insert('.',s,pp); end; var i,p:integer; st:string; sum:Real; begin P:=0; sum:=0; for i:=0 to f.ComponentCount-1 do begin if (f.Components[i] is TEdit)and (f.Components[i].Name<>ed.Name)and (f.Components[i].Tag=1) Then begin st:=(f.Components[i] as TEdit).Text; if st<>'' Then p:=pos('.',st); if p<>0 Then ChangeDotToComma(st,p); sum:=sum+StrToFloat(st); st:=FloatToStr(sum); p:=pos(',',st); if p<>0 Then ChangeCommaToDot(st,p); Ed.Text:=st; end; end; end; procedure TForm1.Button1Click(Sender: TObject); begin CalculateSum(Form1, Edit5); end; end.

Что не так подскажите, почему ругается?
Ответить с цитированием