
11.12.2012, 15:31
|
 |
Профессионал
|
|
Регистрация: 06.08.2012
Адрес: Кривой Рог
Сообщения: 1,791
Версия Delphi: Delphi 7, XE2
Репутация: 4415
|
|
Цитата:
Сообщение от bambooshoot
Дана строка в Edit1:"Сталь20; круг Ш50x250 - 2 заг."
Перегоняю ее в StringGrid следующей процедурой
Код:
procedure TForm1.Button1Click(Sender: TObject);
var
T, T1: TStringList;
I,a, j: Integer;
k, b:string;
begin
T :=TStringList.Create;
T1:=TStringList.Create;
try
T.Delimiter := ' ';
T.DelimitedText := Edit1.Text;
for I := 0 to T.Count - 1 do
StringGrid1.Cells[0,0]:= T[0];
StringGrid1.Cells[1,0]:= T[1];
StringGrid1.Cells[2,0]:=T[2];
StringGrid1.Cells[4,0]:= T[4];
k:=StringGrid1.Cells[2,0];
a:=Length(k);
for a:=1 to a do
begin
b:= #$00D8;
j:=pos(b,k);
Delete(k,j,1);
StringGrid1.Cells[2,0]:=k;
end;
T1.Delimiter := 'x';
T1.DelimitedText :=StringGrid1.Cells[2,0] ;
for I := 0 to T1.Count - 1 do
StringGrid1.Cells[2,0]:= T1[0];
StringGrid1.Cells[3,0]:= T1[1];
finally
.....
Как мне кажется два StringList - перебор.
|
Правильно кажется. Я тоже не пойму зачем нужен T1 если можно обойтись единственным T.
А ещё я не пойму зачем тут вообще нужны циклы? Они же здесь не делают никакой полезной работы.
|