title: Delphi loop speed question
body: <p>Is there a faster way?  I basically need to add AA-ZZ to thousands of records at a time.  </p>
  
  <p>Just a list of 35 items takes quite a while to complete muchless a list of a thousand.</p>
  
  <p><pre><code>
  procedure Tmainform.btnSeederClick(Sender: TObject);
  var
    ch,ch2:char;
    i:integer;
    slist1, slist2:TStrings;
  begin
    slist1:= TStringList.Create;
    slist2:= TStringList.Create;
    slist1.Text :=queuebox.Items.Text;
    for ch := 'a' to 'z' do
      begin
        for ch2 := 'a' to 'z' do
          begin
            //</p>
  
        for I := 0 to slist1.Count - 1 do
          begin
          application.ProcessMessages; // so it doesn't freeze the application in long loops.  Not 100% sure where this should be placed, if at all.
           sleep(1);  //Without this it doesn't process the cancel button.
           if cancel then Break; 
           slist2.Add(slist1.Strings[i]+ch+ch2);
          end;
      end;
  end;
  insertsingle(slist2,queuebox);
  freeandnil(slist1);
  freeandnil(slist2);
  </code></pre>
  
  <p>end;
  </p>
  
  <p>Thanks for any help</p>