who can help me ??

解决方案 »

  1.   

     是在 column header 上放的
      

  2.   

    先把qrlabel删掉再加一个~~~~~~~~~~~
      

  3.   

    object QRBandHead: TQRBand
      Left = 38
      Top = 38
      Width = 1556
      Height = 40
      Frame.Color = clBlack
      Frame.DrawTop = False
      Frame.DrawBottom = False
      Frame.DrawLeft = False
      Frame.DrawRight = False
      AlignToBottom = False
      Color = clWhite
      ForceNewColumn = False
      ForceNewPage = False
      Size.Values = (
        105.833333333333
        4116.91666666667)
      BandType = rbPageHeader
    end
      

  4.   

    BandType = rbPageHeader
    ~~~~~~~~~~~~~~~~~~~~~~~
      

  5.   

    代码
    var
    tit:Tqrlabel;
    begin
       tit:=tqrlabel.Create(form1);
       tit.Parent:=quickrep1.Bands.ColumnHeaderBand;
       tit.Caption:='asdfadf';
       tit:=tqrlabel.Create(form1);
       tit.left:=60;
       tit.Parent:=quickrep1.Bands.ColumnHeaderBand;
       tit.Caption:='123123';
       form1.QuickRep1.Preview;
    end;
      

  6.   

    var
      tit: Tqrlabel;
    begin
      tit := tqrlabel.Create(form1);
      quickrep1.Bands.HasPageHeader := True;
    //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~`
      tit.Parent := quickrep1.Bands.PageHeaderBand;
      tit.Caption := 'asdfadf';
      tit := tqrlabel.Create(form1);
      tit.left := 60;
      tit.Parent := quickrep1.Bands.PageHeaderBand;
      tit.Caption := '123123';
      form1.QuickRep1.Preview;
    end;
      

  7.   

    加了quickrep1.Bands.HasPageHeader := True; 
    也不行
      

  8.   

    其实你直接在QuickRep1的表头中放一个Tqrlabel不就可以了
    为什么不?
      

  9.   

    tit.Parent := quickrep1.Bands.PageHeaderBand;
                  ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~是不是什么都看不见?
      

  10.   

    可以了
    quickrep1.Bands.HasPageHeader := True;
    是定义字段的名称表头?
      

  11.   

    还有
    定义detail后,报表只显示一笔记录??
      

  12.   

    代码
    begin
          detailtext:=TQrdbtext.create(repform);
          with detailtext do
          begin
             parent:=repform.detailband1;
             dataset:=table1;
             datafield:=dbgrid1.columns[i].fieldname;
             width:=dbgrid1.columns[i].width;
             height:=repform.detailband1.height;
             left:=leftv+2;
             top:=5;
          end;
      

  13.   

    //自己用用就知道了!
        object ColumnHeaderBand1: TQRBand //行头
        end
        object DetailBand1: TQRBand //页体
        end
        object PageFooterBand1: TQRBand //页尾
        end
        object PageHeaderBand1: TQRBand //页首
        end
        object SummaryBand1: TQRBand //合计
        end
        object TitleBand1: TQRBand //标题
        end
      

  14.   

    抱歉我已经很久没有玩Quick Report
    所以有点吃力呀!
      

  15.   

    我用dbgrid作为格式然后定义报表格式
      

  16.   

    代码 
    unit rtest;interfaceuses
      Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
      Dialogs, StdCtrls, DB, DBTables, Grids, DBGrids,rep, QRCtrls, QuickRpt;type
      TMainForm = class(TForm)
        DBGrid1: TDBGrid;
        DataSource1: TDataSource;
        Button1: TButton;
        Button2: TButton;
        Edit1: TEdit;
        Table1: TTable;
        procedure Button1Click(Sender: TObject);
        procedure Button2Click(Sender: TObject);
      private
        { Private declarations }
      public
        { Public declarations }
      end;var
      MainForm: TMainForm;implementation{$R *.dfm}procedure TMainForm.Button1Click(Sender: TObject);
    //var s:string;
    begin
    //   s:=edit1.text;
    //   with query1 do
    //      begin
    //         close;
    //         sql.clear;
    //         sql.add(s);
    //         open;
    //      end;
    end;
    procedure TMainForm.Button2Click(Sender: TObject);
    var
    leftv,i:integer; //leftv为报表起始位置
    cheader:Tqrlabel;
    detailtext:Tqrdbtext;
    begin
       leftv:=0;
       for i:=0 to dbgrid1.columns.Count-1 do
           begin
              cheader:=TQRLabel.Create(repform);
              with cheader do
                 begin
                    parent:=repform.columnheaderband1;
                    caption:='asdfasdf';//dbgrid1.columns[i].fieldname;
                    width:=dbgrid1.columns[i].width;
                    height:=repform.columnheaderband1.height;
                    left:=leftv+2;
                    top:=5;
                 end;
                //在leftv 处画表格竖线
               leftv:=dbgrid1.columns[i].width+leftv;
            end;
       //画表头栏边框。起始位为0,总宽度为leftv,也就是dbgrid1的各列宽度之和
       leftv:=0;
       //显示记录内容
       for i:=0 to dbgrid1.columns.Count-1 do
       begin
          detailtext:=TQrdbtext.create(repform);
          with detailtext do
          begin
             parent:=repform.detailband1;
             dataset:=table1; // query1;
             datafield:=dbgrid1.columns[i].fieldname;
             width:=dbgrid1.columns[i].width;
             height:=repform.detailband1.height;
             left:=leftv+2;
             top:=5;
          end;
          //在leftv 处画表格竖线
          leftv:=dbgrid1.columns[i].width+leftv;
       end;
       // 画明晰栏边框。
       repform.quickrep1.preview(); //报表预览
    end;
    end.