Както всеки друг компонент, дано отделиш сеното от плявата :)
QRDBTexts[nColl].Parent := QRBandDetail;
{}procedure OneCollumnCreate(nColl: byte);
begin
if DBGrid.Columns[nColl].Field<>nil then begin
QRDBTexts[nColl] := TQRDBText.Create(QRBandDetail);
QRDBTexts[nColl].Parent := QRBandDetail;
QRDBTexts[nColl].DataSet := DataSet;
QRDBTexts[nColl].AlignToBand := false;
QRDBTexts[nColl].AutoSize := false;
QRDBTexts[nColl].ParentBiDiMode := true;
QRDBTexts[nColl].DataField := DBGrid.Columns[nColl].Field.FieldName;{}
QRDBTexts[nColl].Left := iLeft+iWidth;
QRDBTexts[nColl].Top := 2;
QRDBTexts[nColl].Width := ColumnsWidth[nColl];{}
QRDBTexts[nColl].Height := iHeight+2;
QRDBTexts[nColl].Font := Font;
QRDBTexts[nColl].Alignment := DBGrid.Columns[nColl].Field.Alignment;{}
QRDBTexts[nColl].WordWrap := false;
QRDBTexts[nColl].Visible := true;
QRLabels[nColl] := TQRLabel.Create(QRBandTitleMain);{}
QRLabels[nColl].Parent := QRBandTitleMain;{}
QRLabels[nColl].AlignToBand := false;
QRLabels[nColl].AutoSize := false;
QRLabels[nColl].AutoStretch := false;
QRLabels[nColl].Caption := DBGrid.Columns[nColl].Field.DisplayLabel;{}
QRLabels[nColl].Left := iLeft+iWidth;
QRLabels[nColl].Top := QRLabel1.Top+QRLabel1.Height+4;
QRLabels[nColl].Width := ColumnsWidth[nColl];{}
QRLabels[nColl].Height := QRBandTitleMain.Height-QRLabels[nColl].Top;
QRLabels[nColl].Font := Font;
QRLabels[nColl].Font.Style := [fsUnderline];
QRLabels[nColl].Alignment := DBGrid.Columns[nColl].Field.Alignment;{}
QRLabels[nColl].Visible := true;
QRLabels[nColl].WordWrap := true;
iLeft:=QRDBTexts[nColl].Left+QRDBTexts[nColl].Width;
end;
end;