Само по себе имя Lines.Add()
добавляет новую строку.Чтобы избежать этого, просто не используйте Lines.Add()
на каждой итерации цикла.Есть несколько способов подойти к этому, чтобы поместить все в одну строку:
for I := 1 to a do begin
...
memo1.Text := memo1.Text + IntToStr(I);
...
end;
var
...
s: string;
begin
...
for I := 1 to a do begin
...
s := s + IntToStr(I);
...
end;
memo1.Text := s; // or memo1.Lines.Add(s);
...
end;
var
...
Idx: integer;
begin
...
Idx := memo1.Lines.Add('');
for I := 1 to a do begin
...
memo1.Lines[Idx] := memo1.Lines[Idx] + IntToStr(I);
...
end;
...
end;
var
...
len: integer;
begin
...
for I := 1 to a do begin
...
{memo1.SelStart := memo1.GetTextLen;
memo1.SelLength := 0;}
len := memo1.GetTextLen;
memo1.Perform(EM_SETSEL, len, len);
memo1.SelText := IntToStr(I);
...
end;
...
end;