预览中动态生成QRLabel和QRDBText,为什么运行后不显示?
代码如下:
procedure TForm1.PreparePrint();
var
   LeftValue:integer;
   aLabel : TQRLabel;
   aText: TQRDBText;
   SQL:string;
   i:integer;
begin
   i:=1;
      LeftValue:=0;
    with PrintF2 do
    begin
      aLabel := TQRLabel.Create(PrintF2);
      //设置标题
      aLabel.Parent := TitleBand1;
      with aLabel do
      begin
      Width:=100;
      Height:=TitleBand1.Height;
      Alignment:=taCenter;
      Caption :='工资汇总表';
      Left :=312;
      end;
      DataModule1.tH_PayPrInfo.Open;
      DataModule1.tH_PayPrInfo.First;
      while not DataModule1.tH_PayPrInfo.EOF do
      begin
          aLabel := TQRLabel.Create(PrintF2);
        //设置显示字段标题
        aLabel.Parent :=ColumnHeaderBand1;
        with aLabel do
        begin
        AutoSize:=False;
        AutoStretch:=True;
        Left :=LeftValue+42;
        Top := 0;
        Width:=50;
        Height:=ColumnHeaderBand1.Height;
        Alignment:=taCenter;
        aLabel.Caption := DataModule1.tH_PayPrInfo.FieldbyName('H_Pname').AsString;
        end;
        SQL:='select * from manina where '
                  + 'P_PayYM ='''+Cbo_PayYM2.Text+'''';        SQL:=SQL + 'order by P_Code';
        DataModule1.QueryP32.Close;
        DataModule1.QueryP32.sql.Clear;
        DataModule1.QueryP32.sql.text :=SQL;          aText := TQRDBText.Create(PrintF2);
         //设置显示字段内容
          aText.Parent := DetailBand1;
          with aText do
          begin
          AutoSize:=False;
          AutoStretch:=True;
          name:='aText'+IntToStr(i+10);
          Left :=LeftValue+42;
          Height:=DetailBand1.Height;
          DataSet:=DataModule1.QueryP32;
          DataField:=DataModule1.tH_PayPrInfo.FieldbyName('H_Pname').AsString;
          Alignment:=taCenter;
          end;
          LeftValue:=LeftValue+37;
        i:=i+1;
       DataModule1.tH_PayPrInfo.Next;      end;
    end;
end;上面是一个过程,在Button1Click里调用,再加上PrintF2.QuickRep1.preview;
真不知道问题出在哪里555555555
先谢谢各位大虾~~~