Am einfachsten lässt sich das Ganze lösen, wenn Du ein
Application.ProcessMessages einbaust, damit wird das Timer-Ereignis auch "zugelassen". Allerdings nicht in den innersten Teil der Schleife, dann wirds recht langsam
Welchen Algorithmus nutzt Du. Schau Dir mal das
Threads Beispiel in Deinem Delphi\Demo Verzeichnis an. Da wird das Sortieren auf elegante Art und Weise mithilfe von Threads gelöst. Das wäre auch eine Möglichkeit.
...
...