Fastreport的问题

ou630j 2006-07-19 03:54:31
1Fastreport中怎么样能把静态的edit内的内容和动态的dbgrid的内容输送到报表中????????
2Fastreport中怎么样在frPreview1中设置按钮???????
解决了肯定送上分。谢谢。
...全文
253 10 打赏 收藏 转发到动态 举报
写回复
用AI写文章
10 条回复
切换为时间正序
请发表友善的回复…
发表回复
ou630j 2006-07-20
  • 打赏
  • 举报
回复
zahahui(zahahui) 还是不是很行,是那个dbgrid那里的内容不知道怎么输送到报表中。希望再帮我解答下,谢谢!
ou630j 2006-07-20
  • 打赏
  • 举报
回复
只是单独的edit1的内容时候又点输送到报表中????
zahahui 2006-07-20
  • 打赏
  • 举报
回复
Fastreport中的demo 就是 prntbl1 这个。仔细看看吧,可以实现的。
hsmserver 2006-07-20
  • 打赏
  • 举报
回复
写成这样语法没有问题,但执行就错误了,没有办法,急!!
//关键是是否有那个对象
findobject('这里是你所要赋值的对象的名称'),你直接写memo,是不是没有这个对象
zahahui 2006-07-20
  • 打赏
  • 举报
回复
1Fastreport中怎么样能把静态的edit内的内容和动态的dbgrid的内容输送到报表中????????



这个是我写的。以前给一个朋友的demo里的。其实fastreport里面的demo里也有这个内容,楼主可以进去看看。
放一个frDBDataSet1,frUserDataset1(RangeEnd:=reCount),frUserDataset2 (RangeEnd:=reCount).

fr 里面是一个交叉,一个Masterheader,一个 Masterdate , 一个Crossdate .交叉出memo1=[header],一个memo2=[cell]. memo3 随便放在能看到地方 =[edit] edit 要在数据字典里定义。


code:

procedure TqueryForm.BitBtn13Click(Sender: TObject);
begin
frUserDataset1.RangeEndCount := dbgrid3.FieldCount;
frUserDataset2.RangeEndCount := dbgrid3.FieldCount;
frReport1.ShowReport;
end;

procedure TqueryForm.frReport2GetValue(const ParName: String;
var ParValue: Variant);
begin
if ParName = 'Cell' then
ParValue := dbgrid3.Fields[frUserDataset1.RecNo].Value; //这边就是显示dbfrid里的数据内容
if ParName = 'Header' then
ParValue := dbgrid3.Fields[frUserDataset2.RecNo].FieldName; //这边就是显示dbfrid里的字段名
if ParName = 'edit' then
ParValue := edit1.text; // 这边就是显示edit1.text。


end;



2Fastreport中怎么样在frPreview1中设置按钮??????? 设置什么按钮,其实也没必要设置。
ou630j 2006-07-20
  • 打赏
  • 举报
回复
FindObject('memo').Memo.clear;
FindObject('memo').Memo.Add(edit.text);
这两条语句在那里写啊????
procedure TForm1.Button1Click(Sender: TObject);
begin
frreport1.LoadFromFile('Untitled.frf') ;
frreport1.FindObject('memo').Memo.clear;
frreport1.FindObject('memo').Memo.Add(edit1.text);
frreport1.ShowReport ;
end;
写成这样语法没有问题,但执行就错误了,没有办法,急!!
hsmserver 2006-07-20
  • 打赏
  • 举报
回复
sorry
FindObject('memo').Memo.clear;
FindObject('memo').Memo.Add(edit.text);
ou630j 2006-07-20
  • 打赏
  • 举报
回复
不行啊。我试过了frReport.findobject('memo1').add(edit.text);
这代码不行。。
Fastreport中怎么样能把静态的edit1内的内容输送到报表中去??
没有办法添加的
zahahui 2006-07-20
  • 打赏
  • 举报
回复
你看了Fastreport中的demo 就是 prntbl1 ?看了你就会明白的。

单独的edit也可以的啊。

if ParName = 'edit' then
ParValue := edit1.text; // 这边就是显示edit1.text。
hsmserver 2006-07-19
  • 打赏
  • 举报
回复
1、动态数据可以用frDBDataSet1指向对应的DataSource
frReport.findobject('memo1').add(edit.text);
2、也不一定非要在frPreview1中放置按钮啊,放在form上也是可以的

5,388

社区成员

发帖
与我相关
我的任务
社区描述
Delphi 开发及应用
社区管理员
  • VCL组件开发及应用社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧