2,我做这个小例程的目的是想实现在一个真正报表里改变列头的字体size,可是用
  qrlabel.font.size不能改变,为什么?是哪个参数用问题?
3,报表的上线总是在右上角有一点开,不封口,是怎么回事?第一个问题已经解决,,没人帮忙吗???人那????????//heng

解决方案 »

  1.   

    2,我做这个小例程的目的是想实现在一个真正报表里改变列头的字体size,可是用
      qrlabel.font.size不能改变,为什么?是哪个参数用问题?就剩下一个问题了,,怎么不要分吗?还是俺没给分啊?还是没人知道啊?给俺一个回信啊?
      

  2.   

    要在qrlabel傍边加上边框,可以用一个qrshape放在qrlabel的底部,略比qrlabel大一点就可以了,那刚好能做出阴影的效果。
      

  3.   

    是动态产生的表,不能用qrshape的啊?我是用qrlabel.frame画的,现在的问题是列表头字的大小不能改动,找了一天了,是哪个属性没设对吗???我把两段程序帖这里,大家帮俺看看了看看看看@@@@@@@@@@@@@@@@@@@@@@@@@@第一段如下:QRLabeldep是在TitleBand上的,可以实现字的大小变化
      QRLabeldep:= TQRLabel.Create(QRep.Bands.TitleBand);
      QRLabeldep.parent:=QRep.Bands.TitleBand;
      QRLabeldep.height:=QRep.Bands.TitleBand.height-20;  //??
      QRLabeldep.Left:=10;
      QRLabeldep.Caption :='部门:';
      QRLabeldep.Font.size:=10;
      QRLabeldep.top:=65;
    第二段如下:qrlabel[i]是在ColumnHeaderBand);上的,不能实现字的大小变化
    QRLabel[i]:=TQRLabel.Create(QRep.Bands.ColumnHeaderBand);
          QRLabel[i].parent:=QRep.Bands.ColumnHeaderBand;
          QRep.Bands.ColumnHeaderBand.Height:=20;
          QRLabel[i].AutoSize:=false;
          QRLabel[i].Transparent:=true;
          QRLabel[i].height:=QRep.Bands.ColumnHeaderBand.height-2;
          QRLabel[i].Font.size:= 17;
      

  4.   

    你的columnheaderband有多高啊!如果字体太大,可能都放不下啊!
      

  5.   

    QRLabel[i].height:=QRep.Bands.ColumnHeaderBand.height-2;
    QRLabel[i].Font.size:= 17; 这两句里面,QRep.Bands.ColumnHeaderBand.height-2 > 17吗?如果false,qrlabel只能以原来的大小显示了
      

  6.   

    to (我是小新) 
     这两句里面,QRep.Bands.ColumnHeaderBand.height-2 > 17吗?如果false,qrlabel只能以原来的大小显示了 可是小也不可以啊?我用QRLabel[i].Font.size:= 17; 是为了看的清楚,你把它调小也不可以啊,我的columnheaderband.height:=20,我用这个数值在一个例程上做了,可以随意改变的,字大时,表格的高度限制就被自动取消了,可是在这里就不可以,变大变小都不可以,我把每一个属性都试了,不知道被什么限制住了,,//cry眼睛都成金鱼了,,
      

  7.   

    3.减小qq2.top的值,解决不封口
      

  8.   

    我这样试没有问题:procedure TForm1.QuickRep1Preview(Sender: TObject);
    var
      qrl : TQrlabel;
    begin
      qrl :=TQRLabel.Create(QuickRep1.Bands.ColumnHeaderBand);
      QRL.parent:=QuickRep1.Bands.ColumnHeaderBand;
      QRL.AutoSize:=true;
      qrl.Left := 60;
      qrl.Top := 10;
      QRL.Font.size:= 40;
      qrl.Caption := 'bbb';
    end;
      

  9.   

    这种问题我也遇到过,不过我是在用Qrshape画表格时,因为有的用矩形框,有的用线,所以接口总是有问题,后来我都改成用线来画,就没有问题了,希望对你有帮助.
      

  10.   

    Gongshl(阿单) 回复于2001-12-11 18:10:53   用线是怎么画啊?是用frame吗?我现在是列头字体不能改变大小啊
      

  11.   

    这样试成吗?procedure TForm1.Button1Click(Sender: TObject);
    var
      qrl : TQrlabel;
      i : integer;
    begin
      for i := 0 to 2 do
      begin
        qrl :=TQRLabel.Create(QuickRep1.Bands.ColumnHeaderBand);
        QRl.Name := 'qrl' + inttostr(i);
        QRL.parent:=QuickRep1.Bands.ColumnHeaderBand;
        QRL.AutoSize:=true;
        qrl.Left := 60 +  i * 50 ;
        qrl.Top := 10;
        QRL.Font.size:= 40;
        qrl.Caption := QRl.Name;
      end;
    end;
      

  12.   

    QRL.AutoSize:=true;
        你把这个设成自动调节了,那表格的宽度就没法控制了,不可以啊,,你这段程序就这条语句和我的不一样啊,,我刚才试了,就是换了这句,程序里表格的字大小还是没变,,:(单独试这段程序没问题,,,
      

  13.   

    那可以把代码给我看看嘛?完整的,[email protected]
      

  14.   

     to cobi(我是小新) ,给我你的email啊,我发给你,可以吗?你留下地址,明天我发,我今天要回去了,不然就通宵了:(累死了,哎,,,
      

  15.   

    回复人: cobi(我是小新) (2001-12-12 11:07:56)  得0分 
    我没有收到你的邮件啊  
    我下午出去了,邮件被打回,我现在在发,,,,,,,,,晚上来看,,
      

  16.   

    cobi(我是小新) 我已经把窗体和源代码都发给你了啊???昨天晚上又发的:(你还没受到吗?
      

  17.   

    我的QQ不好用,我这里有代理,出不去啊
    //cry
    //help
    ..................................@_@...................................
      

  18.   

    你的代码我看过了,因为其中很多地方都要用到你的数据库,所以我把其中很多东西都去掉后试了一下效果!
    我觉得你的几个band的创建不是怎么好,因为在我的预览效果中,其实也没有真正的预览,不过是把一个quickrep的设计界面放出来了,而band的效果(高度什么的)都看不出和程序有什么关系。或者是我改的太多了。
    你能否把整个程序发给我呢?数据库方面你用datapump把关键的表导出成paradox给我吧,我再试试
      

  19.   

    to cobi(我是小新) 
    我还用一个信箱,如果发信的信箱不好用,在用这个联系:[email protected]
      

  20.   

    to cobi(我是小新) 如果正个程序发,就太大了,而且涉及到其他人的函数,俺不敢做主啊,:(其实最重要的是我发给你这一段,我也是改编的,你和自己的一个数据库连接,测试一下列表头的字体就可以,至于表头的具体内容,你可以连接自己的数据库,好吗?
     
      

  21.   

    你说的报表band我是根据表格需要自己固定的band.heigh+20,我也觉得band 的动态创建不是很好,还有那些计算,我是根据我的可能出现的几种情况,大约估计的数,,你有什么好的计算方法吗?比如计算字体开始的位置???对了,浏览的时候是A4的纸,它的象素是多少?700?800?or???
      

  22.   

    其实也可以不要整个程序,关键是uses中的两个单元,process还有什么的,请发给我吧(因为是你自己定义的)
    还有数据的,也传给我吧,好象是有关联的
      

  23.   

    我觉得这样吧,因为你的quickrep是动态创建,干脆改为设计时就创建,然后吧band都放好,程序中只动态改变高度、创建qrlabel等。
    至于quickrep可以放在一个visable=false的panel中,调用预览的时候它会自动出来的,这个我试过。你看这样做可以解决吗/
      

  24.   

    我明白你的意思,把需要的band 事先放好,但是这个不影响后面的问题啊?计算我可以在仔细一些,关键是字体的大小为什么不能变?我就是想知道字体为什么不能变啊?就象开始线不能封口,我找出来了,那么字体肯定也是哪里限制住了,帮我,,,,,,,,,找~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
      

  25.   

    然而我在单独试验我给你的代码的时候就发现没有问题,这个你也认同。
    而当时我就是吧band固定好的,我觉得可能是它的问题,你或者真的试一下吧
    而且你现在的预览界面真的不好看(可能我改动程序太多了),用我的方法可以真正的实现预览啊
      

  26.   

    浏览不好看,比较乱,但是打印出来是满足要求的,:)不是你改动的多,浏览就是不好啊,好象浏览缺少很多线是吗?但打印是没问题的,@_@,其实你只要不改动打印报表那段就没问题的,
    谢谢小新,我现在就把帖子结 了,如果有问题,我在开帖子问,这个太长了,嘿嘿,,我在另一个例程里试试固定band怎么样,,