Vlozte za implementation {$R *.lfm} Var g: TTreeView; Pozmnente proceduru quick procedure quick (r, s: integer; t: TTreeNode); ... t := g.Items.AddChild (t, IntToStr (r) + '..' + IntToStr (s)); ... if r Upravte TForm1.Button1Click procedure TForm1.Button1Click(Sender: TObject); begin fill; g := TreeView1; quick (1, n, nil); end; Cely soubor unit Unit1; {$mode objfpc}{$H+} interface uses Classes, SysUtils, FileUtil, Forms, Controls, Graphics, Dialogs, StdCtrls, ComCtrls; type { TForm1 } TForm1 = class(TForm) Button1: TButton; TreeView1: TTreeView; procedure Button1Click(Sender: TObject); private { private declarations } public { public declarations } end; var Form1: TForm1; implementation {$R *.lfm} Var g: TTreeView; const n=31; var a: array [1..n] of integer; procedure aswap (i, j: integer); var t : integer; begin t := a[i]; a[i] := a[j]; a[j] := t; end; procedure quick (r, s: integer; t: TTreeNode); var i, k, x: integer; begin t := g.Items.AddChild (t, IntToStr (r) + '..' + IntToStr (s)); i := r; k := s; x := a[(i+k) div 2]; repeat while a[i] < x do i:= i+1; while a[k] > x do k:=k-1; if i<=k then begin aswap (i,k); i:=i+1; k:=k-1; end; until i>k; if r a[i+1]then ok:=false; if not ok then writeln('Chyba'); end; { TForm1 } procedure TForm1.Button1Click(Sender: TObject); begin fill; g := TreeView1; quick (1, n, nil); end; end.