fastreport做复合报表时,同时有纵向和横向的页面,预览时有时横向的页面也变成了纵向,郁闷中...请帮帮忙!!!!

时间:2022-09-10 17:10:31
小弟用的是fastreport3.03,为了实现多份报表于同一个预览窗口。执行了以下工作:

frxReport1.LoadFromFile('1.fr3');
frxReport1.PrepareReport;
frxReport1.LoadFromFile('2.fr3');
frxReport1.PrepareReport(false);;
frxReport1.LoadFromFile('3.fr3');
frxReport1.PrepareReport(False);
frxReport1.LoadFromFile('4.fr3');
frxReport1.PrepareReport(False);
frxReport1.ShowPreparedReport;

其中frxReport1是一个TfrxReport
1.fr3中的页面是纵向
2.fr3中的页面是纵向
3.fr3中的页面是横向
4.fr3中的页面是横向

显示预览页面时,有时会出现横向的页面也变成了纵向,郁闷啊...请各位高手帮忙!!!

10 个解决方案

#1


都两天了,没人回答吗?没有人碰到过这种问题吗 ,急啊!!!!!!!!!!!!!!!!!

#2


太难了兄弟,问个容易的吧,我好想回答啊

#3


不好意思,我没用过fastreport

#4


你用下面的试试:
frxReport1.LoadFromFile('1.fr3');
frxReport1.ShowReport;
frxReport1.LoadFromFile('2.fr3');
frxReport1.ShowReport;
frxReport1.LoadFromFile('3.fr3');
frxReport1.ShowReport;
frxReport1.LoadFromFile('4.fr3');
frxReport1.ShowReport;
frxReport1.ShowPreparedReport;

如果不行,没有办法,只有在窗体多放几个FrxReport

#5


to  hqhhh;
谢谢,不过方法不可行,本来可以一次预览显示4页(含横向纵向),现在变成了预览4次,每次一页.

#6


有一种方法,
就是,你把四个报表放在同一个报表中,有四页,这样就可以!
你可以试试!

#7


to hqhhh:
怎么做?

#8


我是用多个checkbox让用户选择需要预览的页面
在程序开头写了:
frxreport1.Clear;  //似乎clear方法不能清除报表,不解???????

frxReport1.LoadFromFile('1.fr3');
frxReport1.PrepareReport;
frxReport1.LoadFromFile('2.fr3');
frxReport1.PrepareReport(false);;
frxReport1.LoadFromFile('3.fr3');
frxReport1.PrepareReport(False);
frxReport1.LoadFromFile('4.fr3');
frxReport1.PrepareReport(False);
frxReport1.ShowPreparedReport;


显示预览页面时,第一次正常,可再次预览有时会出现横向的页面也变成了纵向,并且页数也不对,太奇怪了?????????????????

#9


在一个frxReport中设置四个页面,
如果需要打印则其Visible设置为True, 否则设置为False
请参考:
  frReport1.Pages.Pages[0].Visible := CheckBox1.Checked
  frReport1.Pages.Pages[1].Visible := CheckBox2.Checked
  frReport1.Pages.Pages[2].Visible := CheckBox3.Checked
  frReport1.Pages.Pages[3].Visible := CheckBox4.Checked

#10


谢谢,hqhhh,问题解决.

#1


都两天了,没人回答吗?没有人碰到过这种问题吗 ,急啊!!!!!!!!!!!!!!!!!

#2


太难了兄弟,问个容易的吧,我好想回答啊

#3


不好意思,我没用过fastreport

#4


你用下面的试试:
frxReport1.LoadFromFile('1.fr3');
frxReport1.ShowReport;
frxReport1.LoadFromFile('2.fr3');
frxReport1.ShowReport;
frxReport1.LoadFromFile('3.fr3');
frxReport1.ShowReport;
frxReport1.LoadFromFile('4.fr3');
frxReport1.ShowReport;
frxReport1.ShowPreparedReport;

如果不行,没有办法,只有在窗体多放几个FrxReport

#5


to  hqhhh;
谢谢,不过方法不可行,本来可以一次预览显示4页(含横向纵向),现在变成了预览4次,每次一页.

#6


有一种方法,
就是,你把四个报表放在同一个报表中,有四页,这样就可以!
你可以试试!

#7


to hqhhh:
怎么做?

#8


我是用多个checkbox让用户选择需要预览的页面
在程序开头写了:
frxreport1.Clear;  //似乎clear方法不能清除报表,不解???????

frxReport1.LoadFromFile('1.fr3');
frxReport1.PrepareReport;
frxReport1.LoadFromFile('2.fr3');
frxReport1.PrepareReport(false);;
frxReport1.LoadFromFile('3.fr3');
frxReport1.PrepareReport(False);
frxReport1.LoadFromFile('4.fr3');
frxReport1.PrepareReport(False);
frxReport1.ShowPreparedReport;


显示预览页面时,第一次正常,可再次预览有时会出现横向的页面也变成了纵向,并且页数也不对,太奇怪了?????????????????

#9


在一个frxReport中设置四个页面,
如果需要打印则其Visible设置为True, 否则设置为False
请参考:
  frReport1.Pages.Pages[0].Visible := CheckBox1.Checked
  frReport1.Pages.Pages[1].Visible := CheckBox2.Checked
  frReport1.Pages.Pages[2].Visible := CheckBox3.Checked
  frReport1.Pages.Pages[3].Visible := CheckBox4.Checked

#10


谢谢,hqhhh,问题解决.