小弟刚接触fastreport,想用它打印rtf文档,具体过程是这样的:把窗体的richedit载入的rtf文件传递到fastreport 中的richview对象后打印出来,就这么简单的问题。结果预览时老是显示空白,我搞了半天都无法实现,气得吐血。
代码如下:
procedure TForm1.btn2Click(Sender: TObject);
var
b:TfrxRichView;
begin b:= TfrxRichView(frxrprt1.FindObject('rich1'));
b.RichEdit.Lines.LoadFromFile('招标.rtf');
frxrprt1.LoadFromFile('hy.fr3');
frxrprt1.ShowReport;
end;fastreport中也不知道要怎么设置才能预览出文件内容。请教达人一下啊,新人分不多,请见谅。
代码如下:
procedure TForm1.btn2Click(Sender: TObject);
var
b:TfrxRichView;
begin b:= TfrxRichView(frxrprt1.FindObject('rich1'));
b.RichEdit.Lines.LoadFromFile('招标.rtf');
frxrprt1.LoadFromFile('hy.fr3');
frxrprt1.ShowReport;
end;fastreport中也不知道要怎么设置才能预览出文件内容。请教达人一下啊,新人分不多,请见谅。
用那个TfrxRTFExport控件。
你看我的代码:
procedure TForm1.btn3Click(Sender: TObject);
begin
if dlgOpen1.Execute then
begin
redt1.Lines.LoadFromFile(dlgOpen1.FileName);//打开‘招标.rtf’
redt1.Lines.SaveToFile('temp.rtf'); //存到临时文件
end;
end;
procedure TForm1.frxrprt2GetValue(const VarName: String;
var Value: Variant);begin
b:= TfrxRichView(frxrprt1.FindObject('rich1'));
b.RichEdit.Lines.LoadFromFile('temp.rtf'); //从临时文件读取
end;
procedure TForm1.btn2Click(Sender: TObject);
begin
frxrprt2.LoadFromFile('hy.fr3'); frxrprt2.ShowReport;//预览报表。end;
在fastreport 设计器中,建了一主数据区,里面放了一个richview,名字:rich1
这样预览后还是空白的,郁闷
var
b:TfrxRichView;
begin
frxrprt1.LoadFromFile('hy.fr3'); //这里应该先 b:= TfrxRichView(frxrprt1.FindObject('rich1'));
if b <> nil then
begin
showmessage('OK'); //先show一下看看成功没有。
b.RichEdit.Lines.LoadFromFile('招标.rtf');
end; frxrprt1.ShowReport;
end;
我在报表设计区建了一主数据区,里面放了一个richview,其它都没放。也没有设置数据集,这样会有问题吗?
var
b:TfrxRichView;
begin b:= TfrxRichView(frxrprt1.FindObject('rich1'));
b.RichEdit.Lines.LoadFromFile('招标.rtf');
frxrprt1.LoadFromFile('hy.fr3');
frxrprt1.ShowReport;
end;
你先加载报表中的rich1内容,然后再加载报表文件,当然是空了
改一下看看。
var
b:TfrxRichView;
begin
frxrprt1.LoadFromFile('hy.fr3');
b:= TfrxRichView(frxrprt1.FindObject('rich1'));
b.RichEdit.Lines.LoadFromFile('招标.rtf');
frxrprt1.ShowReport;
end;