我用QuickReport做了个打印的小程序,动态创建QRLabel控件,放在QRband内,QRLabel是个数组类型的,当QRLabel显示的个数超过一页的时候,怎样实现报表的换页继续显示呢?请大家帮忙,先谢了。
解决方案 »
- delphi获取打印机列表
- DELPHI问题
- [表格控件]在D7的Activex控件组里有一个TF1Book表格控件,有人了解吗?
- 升级到D2007后出现Operation not allowed on a unidirectional DataSet,怎么解决呀?
- 大家帮我看看这段代码
- 问一个有关于字体的问题?高手请进
- 表里有个date类型字段,怎么找出时间属于当月的记录,sql怎么写
- BMP文件的读写程序中的bfType='MB'?
- delph5在win2000下开发的com在其他没有装delphi5的机器上无法注册
- 100分请教高手帮忙解决问题~!哎明天搞不定就要被吵鱿鱼了!
- 头有点晕,问问大家!!
- 打印问题?选A3纸时,内容标题在预览前是居中的,但预览后就跑到后面去了。(在线等待!)
procedure Buttomn1click();
begin
linecount:=(j div 8);
for i:=0 to j-1 do
begin
IDLabel[i]:=TQRLabel.Create(self);
IDLabel[i].ParentReport:=FormRep.QuickRep1;
IDLabel[i].Parent:=FormRep.QRSubDetail1;
IDLabel[i].AutoStretch:=true;
IDLabel[i].WordWrap:=true;
IDLabel[i].Frame.DrawTop:=true;
IDLabel[i].Frame.DrawBottom:=true;
IDLabel[i].Frame.DrawLeft:=true;
IDLabel[i].Frame.DrawRight:=true;
IDstr:=inttostr(IDbeg+8*LineCount+k);
case length(IDstr) of
1:strID[i]:=Format('000000%d',[IDbeg+i]);
2:strID[i]:=Format('00000%d',[IDbeg+i]);
3:strID[i]:=Format('0000%d',[IDbeg+i]);
4:strID[i]:=Format('000%d',[IDbeg+i]);
5:strID[i]:=Format('00%d',[IDbeg+i]);
6:strID[i]:=Format('0%d',[IDbeg+i]);
7:strID[i]:=Format('%d',[IDbeg+i]);
end; IDLabel[i].Caption:=chr(13)+' 产品序号:'+chr(13)+' '+CboType.Text+strID[i]+' '+chr(13)+' (撕毁不保修) '; if (i=0) or ((i mod 8)=0) then
IDLabel[i].Left:=0
else
IDLabel[i].Left:=IDLabel[i-1].Left+92;
IDLabel[i].Font.Size:=9;
IDLabel[i].Font.Name:='宋体'; if i>159 then
begin
FormRep.QRSubDetail1.ForceNewPage:=true;
IDLabel[i].Top:=52*((i-159) div 8); end
else
IDLabel[i].Top:=52*(i div 8);
IDLabel[i].Height:=52;
IDLabel[i].Width:=100; IDLabel[i].Visible:=true;
end;
end