说三道四技术文摘-感悟人生的经典句子
说三道四 > 文档快照

在Delphi中运用QuickReport实现多栏列印

HTML文档下载 WORD文档下载 PDF文档下载
在Delphi中运用QuickReport实现多栏列印

---- 在所有有关Delphi的书籍中,都没有讲解如何实现一个打印项的多栏打印,而实现生活中往往有许多报表要求同一项目多栏打印,QuickReport提供了报表打印一整套完整的解决方案,完全可以实现同一项目的多栏打印,技术关键是如何控制表中记录提取个数,如果在Treport的DataSet属性中选定一个Table

那么QuickReport每次打印详细列表(BandType=rbDetail)属性的TQRBand时,系统会自动取出一个记录供打印,并将表中的记录指针移到下一位,这样程序无法控制表中记录指针的移动,就无法实现多栏打印,只要程序不在Treport的DataSet属性选定任何表

QuickReport便不会控制表记录的提取,QuickReport特为其它类型数据打印提供了一个OnNeedData事件,QuickReport 每次打印详细列表(BandType=rbDetail)属性的TQRBand时,会触发这个事件,要求提供打印数据,如果程序在OnNeedData事件中编写运用表中数据提供打印资料,便能实现多栏打印,现举例说明:

---- 现在要实现一个Table1中Name项两栏打印,在窗口上放TquickReport组件 quickReport1,并在上面放Tband组件band1,将其BandType属性改为Detail,在Tband 组件上并排放两个QRLabel组件QRLabel1和QRLabel2,在quickReport1的OnNeedData事件中写如下代码:

procedure TForm1.QuickRep1NeedData(Sender:

TObject; var MoreData: Boolean);

var

I: integer;

begin

MoreData := True;

for I:= 1 to 2 do

begin

if Table1.Eof then Break;

case I of

1: QRLabel1.Caption :=

Table1.FieldByName('Name').AsString;

2: QRLabel2.Caption :=

Table1.FieldByName('Name').AsString;

end;

Table1.Next;

end;

if Table1.Eof then MoreData := False;

end;

---- 为了保证打印或者打印预览开始时Table1指针在第一条记录,在quickReport1的 BeforePrint事件中写如下代码:

procedure TForm1.QuickRep1BeforePrint

(Sender: TCustomQuickRep;

var PrintReport: Boolean);

begin

Table1.First;

end;

---- 这样程序调用QuickRep1.Preview或者QuickRep1.Print便能预览或者打印到一个关于 Name的从左至右,从上到下的多栏报表。

阿里巴巴数据交换平台——集大成于一身 [体验]Windows 8 Metro/Modern Style IE 10 Growth Hacker正席卷全球,你了解它吗? Splashtop发布Ubuntu Linux版本Streamer 性能超过VNC 10倍 Windows 8引领智能操作 人机交互进入触控时代 多线程 怎么在CB中动态加载BPL库,并使用里面定义的窗体 好东东共用 vc+oracle+Ado时调用存储过程出现错误,不用savepoint时没问题,用了就出错怎么办。 3条裤衩了,散分。 灌灌水舒缓一下心情 我安装完ORACLE8.17 可Database Configuration Assistant却打不开? 关于详细设计模板 如何在递归调用中解决内存耗尽 同一种的液体底面积相同,高度相同,但形状不相同,为 滴定分析中标准溶液和待测溶液的位置刚学分析化学,问 滴定度是指每毫升标准溶液相当于被测物质的克数通常用 滴定度是指每毫升标准溶液相当于被测定物质的克数,通 聚合氯化铝为什么要检测AI2O3聚合氯化铝中是如何 焊接装过柴油的罐子时应如何防止着火 什焊柴油箱有油能不能通二氧化碳气体后焊接 我是焊柴油箱的 怎么防止爆炸呢 ┢┦aΡpy | 中国敦促美国尽快终止对古巴的封锁泰国前总理阿披实被控谋杀英国报纸窃听丑闻开庭审理30万欧元塞浦路斯购房可获永居权利比亚枪手打劫央行5000万美元挂号费要涨了 药品价要降了印度双性人喜获龙凤胎 创下“医学奇迹市政协十三届二十二次主席会议召开把握关键期做好“三农”重点工作高脂食物其实无害健康?专家建议让人无野蛮法师快穿之炮灰逆袭最终一击最强的我变成了史莱姆小人物闯荡大都市黄石公园旅游地狱谷野猿公园旅游箱根小涌谷温泉旅游滇西抗战纪念馆旅游青龙湖景区旅游
备案号:鲁ICP备13029499号-2 说三道四 www.s3d4.cn 说三道四技术文摘