怎么打出来象存折一样(100分)

  • 主题发起人 主题发起人 dong1024
  • 开始时间 开始时间
D

dong1024

Unregistered / Unconfirmed
GUEST, unregistred user!
我想做一个打印的程序,但它打印的时候要象银行存折那样的,就是每次都在上一条
记录下面接着打,对于同一样东西都是这样,换了别的东西它就重新在第一行开始
打印了,我说的明白吗
 
可以呀,先指定要打印的每行的垂直位置,然后输给打印机换行的字符
 
每次数据库字段值判断和上次的是否一样,如果一样就接着打了
如果不一样就打出你需要的部分了。
用IF then
语句就可以了吧。
 
银行存折的磁条记录了进行过的打印次数。你也需要知道这个次数才行。
(问用户或者查数据库)
 
次数我可以看数据库,但我不知道怎么定位呀
 
有n次,就换n行
 
QR 控件在打印之前会有一个事件。在这个事件里使用全局变量记录打印过的数目。
如果这次打印的不是需要印在纸上的,把相应的控件字体颜色设置成背景颜色(这样
就不会打印),然后全局变量加一。如果是需要打印的,设置颜色,打印之。
OK 吗?
 
哦,听了mikedeakins的方法,好像知道了一点,你能不能写些代码给我呢
不过,你没空写的话也没问题,过两天就给分
 
你一定用了某种数据库,可以将表中加几个字段
分别表示:打印行数,打印页数,是否已经打印
程序内定义每张可打印的行数,如果已打印了,就跳一行(打印值为空),
没有打印就将记录打印出来
 
没人回答了吗?谁有简单的程序给我呀,分可以再加,求求大家了
 
我真不知道
 
对 郝晶 补充:
  他的办法是完成的前提,你可以用构件的方法或者完全程序的方法来控制,
1、用构件的方法:
  在打印过的记录进行输出时,把相应的报表单元的visible设为False,需要打印时再设为True,FastReport与ReportBuild
的报表单元有这个属性。
  这种方法的最大的好处是只要做一下自定义纸张就行了。
2、纯程序的方法:
  直接使用Printer.Canvas进行打印输出,定位全部靠编程实现,不推荐。
 
我好久以前用delphi做过你所说的类似的报表。
需要下载qreport的一个补丁。安装后会出现一些标准delphi中没有的qreport类
控间,挺好用的。其中有一个loop...可以循环打印空表格。对你这个需求有帮助。
你可以在打完第一个东西后如果第二个东西来了,那么你就打印控表格直到换页就可以了。
咳,现在写c程序了,以前的东东忘了。呵呵
 
liuly干吗要踢我呀
 
算了,都没人答了
 
多人接受答案了。
 
后退
顶部