procedure TForm2.Button1Click(Sender: TObject);
Var f:File Of Zapis;
st:Zapis;
i:integer;
begin
AssignFile (f,'record.dat');
Rewrite (f);
StringGrid1.RowCount := StringGrid1.RowCount+1;
StringGrid1.Cells[0,StringGrid1.RowCount-1]:=Edit1.Text;
StringGrid1.Cells[1,StringGrid1.RowCount-1]:=IntToStr(Count);
For i:=0 to StringGrid1.RowCount -1 do
Begin
st.Name:=StringGrid1.Cells[0,i];
st.Count:=StrToInt(StringGrid1.Cells[1,i]);
Write (f,st);
end;
CloseFile (f);
Label2.Visible:=false;
Edit1.Visible:=false;
Button1.Visible:=false;
end;
Тебе выдает ошибку, что не может конвертировать пустоту, т.е. в строке у тебя ничего нет. Как вариант используй StrToIntDef.
P.S.: я бы в структуру хранения результатов добавил общее количество записей. При считывании файла в StringGrid добавлял нужное кол-во строк, затем заполнял его, а уже потом показывал форму.
__________________
Всегда пишите код так, будто сопровождать его будет склонный к насилию психопат, который знает, где вы живете.
Последний раз редактировалось Kailon, 10.06.2014 в 00:21.