一个简单的fastreport图像报表问题!(150分)

  • 主题发起人 主题发起人 zooyo2000
  • 开始时间 开始时间
Z

zooyo2000

Unregistered / Unconfirmed
GUEST, unregistred user!
fastreport的例子中没有动态加载图像的例子!
程序要求:
在主窗体中有许多动态创建的image控件数组(姑且这么叫,控件个数不定),image控件中已经调入bmp图像(图像不大),想在报表中预览和打印,可以自定义每行和每列的图像数目及页边距,可根据图的大小和数目判断是否出了边界,我用quickreport编了一个,其它都正常,就是不能换页,现求用fastreport实现的代码,或帮忙改一下quickreport(最好能把行列个数控制也加上)的,只要能实现都给分!!!
我的quickreport的程序如下:
unit qr;
interface
...
var
Form_fr: TForm_qr;
a_image :array of TQRImage;
//QRImage控件数组
.....
procedure TForm_qr.QuickRep1BeforePrint(Sender: TCustomQuickRep;
var PrintReport: Boolean);
var
i:integer;
begin
SetLength(a_image,pub.n );
//分配内存,pub.n为公共单元传来的打印图像的总数
for i:=0 to pub.n-1do
begin
if i=10 then
quickrep1.NewPage;
//控制换页,但不管用
a_image := TQRImage.Create(DetailBand1);
//在DetailBand1上创建TQRImage
a_image.Parent := DetailBand1;
a_image.visible:=true;
a_image.AutoSize :=true;
//纵向定位
a_image.Top := i * 100;
//横向定位
a_image.Left := 0;
//显示图形
a_image.Picture.Bitmap :=main.main_image ;
//main_image为主窗体中的动态image控件
a_image.update;
a_image.Show;
end;
end;

end.
 
>>fastreport的例子中没有动态加载图像的例子!
见我去年8月的一个回复贴。
http://www.delphibbs.com/delphibbs/dispq.asp?lid=2111781
--------
procedure TForm1.Button1Click(Sender: TObject);
var
PicName:string;
v: TfrPictureView;
Page: TfrPage;
begin
OpenPictureDialog1.Execute;
PicName:=OpenPictureDialog1.FileName;
frReport1.Pages.Clear;
frReport1.Pages.Add;
Page := frReport1.Pages[0];
v := TfrPictureView.Create;
v.SetBounds(0, 0, 500, 500);
//这里可以调整到你认为合适的地方
v.Picture.LoadFromFile(PicName);
Page.Objects.Add(v);
frReport1.ShowReport;

end;
--------
 

Similar threads

D
回复
0
查看
2K
DelphiTeacher的专栏
D
D
回复
0
查看
1K
DelphiTeacher的专栏
D
D
回复
0
查看
1K
DelphiTeacher的专栏
D
S
回复
0
查看
3K
SUNSTONE的Delphi笔记
S
S
回复
0
查看
2K
SUNSTONE的Delphi笔记
S
后退
顶部