在FastReport中,。如何强制换页!这里有200分,解决的话您还有另外100分(我在这之前(200分)

  • 主题发起人 主题发起人 PigDong
  • 开始时间 开始时间
P

PigDong

Unregistered / Unconfirmed
GUEST, unregistred user!
我得意思是在打印中比如打印第一页时,打到一半不打了,把余下的内容打到第二页!这样
打完之后第一页有一部分纸是空的!
取得另外100分的地址:http://www.delphibbs.com/delphibbs/dispq.asp?lid=1224584
 
需要换页的地方加上newpage
 
用Printer单元来控制吧 用Newpage不知是否可以自由控制
 
手工设计fast reprot方法
报表窗口如下
frdbdataset1 fr数据源 dataset设置为要显示的数据集
frreport1 fr报表
报表的的设计如下
band1,报表标题
band2,主项数据无数据源 
band3,主项数据 数据源为frdbdataset1
band4,栏目脚,用于显示合计数据
band5,子栏  ,用于不足行时补写空白行

procedure TForm1.frReport1ManualBuild(Sender: TfrPage);
//在frreport1中的onmanualbuild事件中手工设置报表项
var
i, j,k: Integer;
begin

k:=trunc(frdbdataset1.DataSet.RecordCount/8);
            //每页显示8行(行数可用变量),计算页数
Sender.ShowBandByType(btReportTitle);
//显示报表标题
for i := 0 to kdo
//循环打印每页
begin
Sender.ShowBandByName('Band2');
       //显示列头 (band2是一个主项数据,无数据源)
for j := 1 to 8do
//循环打印每行
begin
if not frdbdataset1.Eof then
begin
Sender.ShowBandByName('Band3');
      //显示主项数据 (band3是主项数据,数据源为frdbdataset1)
frdbdataset1.Next;
//显示下一条数据
end
else
sender.ShowBandByName('band5');
//显示空白行 (band5为child band)
end ;
//在实际的页面设计当中此处有一个栏目脚band 以显示合计
if i <> k then
Sender.NewPage;
//产生新页面
end;
end;
 
大虾dhl2001,请到http://www.delphibbs.com/delphibbs/dispq.asp?lid=1224584取另外
100分。
 
后退
顶部