纸型为每单元179mm*93mm的连续纸,每单元,为一个明细,打印一个人的工资,工资共有应发部分14项,分两行显示,应扣部分10项,分两行显示,合计部分六项,分一行。每行均为8项。
要求应发部分,应扣部分,合计部分的项,均可选择是否打印,例如应发部分的第二项不打印,则第三项应该紧挨着第一项。
用何种方法和工具能够实现?
方法一:水晶报表,如何动态创建字段?
方法二:printer.print ""
........
或者大家还有什么更好的方法?
给点思路!
要求应发部分,应扣部分,合计部分的项,均可选择是否打印,例如应发部分的第二项不打印,则第三项应该紧挨着第一项。
用何种方法和工具能够实现?
方法一:水晶报表,如何动态创建字段?
方法二:printer.print ""
........
或者大家还有什么更好的方法?
给点思路!
解决方案 »
- 数据库和控件问题,急啊
- 同事生了个胖小子点名让我给提供几个有创意的名字,不忍心让她失望
- 拜托啦.谁有输入法的代码,说明能详细点的.找了好多.都不合适.九几年的.代码都...
- 我在VB6中使用ADO编程,并在MSHFlexGrid控件中显示。我在MSHFlexGrid上编写了删除记录程序段,我想问:当删除一条记录后,发现删错了,AD
- 怎么样实现ComboBox的快速查询?
- comtext中显示房间号,lstname2中不显示所选房间号的姓名,还有另一个问题txtin.Text = guest1(int1).dtmin,txtout.Text = guest1(int1).dt
- 请问如何使窗体位于屏幕中央?
- 急!!!大虾指教!!!如何实现多表查询,经调试可以实现的马上给100
- 关于使用timer
- 垃圾是怎样炼成的----联想电脑质量谈(转)
- 怎么样作用户控件使的它能与窗体之间能够相户联系啊?
- 求助!!急!!有难度,高手进!
绿豆大侠,MSTOP,暴风雨,莫伊姐姐,还有各位,星星,角角,你们都在哪呀!
但是,超过一页,就不能控制精确走纸了!
也就是,printer.papersize=256,就无法执行过去。它默认的纸型为A4,一张A4纸,只能打印,两个单元,然后走纸一大段。从第二页开始,打第三个单元。
怎样不让打印机,走过那一大段纸呢?To: wxfczg(筱芳) 我没用过activereport,有空我试一下,谢谢!
用过vsflexgrid和vsview没有?在grid里面显示你的数据,不想打的列把colwidth设成0或者隐藏都可以的,然后再传给vsview打印。
arp也是可以的,根据需要动态做表
给你几个我写的函数,比较实用:
Sub InitPrint() '这个函数用来初试化打印机,请最先调用
Printer.Orientation = 2 '设置为横向打印,改为1就是纵向了
Printer.ScaleMode = 6 '设定单位为毫米
Printer.ScaleLeft = 30 '设置左边界
Printer.ScaleTop = 30 '设置上边界
Printer.ScaleHeight = 300 '设置高度
Printer.ScaleWidth = 200 '设置宽度
End SubSub PrintStr(ByVal X As Long, ByVal Y As Long, ByVal Fntsize As Integer, ByVal Str As String) '这个函数用来在指定位置用指定的字体大小打印指定的字符串
Printer.CurrentX = X '指定X坐标
Printer.CurrentY = Y '指定Y坐标
Printer.FontSize = Fntsize '指定字体大小
Printer.Print Str '打印字符串
End SubPrinter.Line (X1, Y1)-(X2, Y2) '这个是Printer对象自带的方法,可以打印一条线Printer.PaintPicture '这也是Printer对象自带的方法,可以在指定位置打印图片
PaintPicture这个方法的参数可以参考一下MSDN,比较多,我这里就不说了。当你调用这些函数和方法之后,最后还需要用:
Printer.EndDoc 这个方法来将你的最终结果打印到纸上,如果不用这个语句,你的打印机是不会打印的。应该说只要你的程序使用这些函数,就可以将任何你想打印的东西打印出来了。
http://www.moon-soft.com/book/vbzgridkjddyff.htm