I create the progressbar at fly in this way
TForm1...
...
StBar: TStatusBar;
PrBar : TProgressBar;
...
end;
procedure TForm1.FormCreate(Sender: TObject);
begin
....
PrBar:=TProgressBar.Create(StBar);
PrBar.Parent:=StBar;
...
end;
and also (I have the progressbar in a panel with index = cPnlPrBar)
procedure TForm1.StBarDrawPanel(StatusBar: TStatusBar; Panel: TStatusPanel; const Rect: TRect);
begin
if (Panel = StatusBar.Panels[cPnlPrBar]) then
PrBar.BoundsRect:=Rect
end;