看我写的PrintTextFile,为什么是多页重合成一页

gaoyahong 2007-01-04 02:25:56
'此过程向打印机传送打印数据
Private Sub PrintTextFile(ByVal sender As System.Object, ByVal e As System.Drawing.Printing.PrintPageEventArgs)
Dim yPos As Single = 0
Dim liftMargin As Single = e.MarginBounds.Left
Dim topMargin As Single = e.MarginBounds.Top

Static PrintOnNextPage As Boolean = False
Dim TotalPage As Integer '总页数

If Mym.ClientsDataSet.工资表.Count Mod 10 = 0 Then
TotalPage = CInt(Mym.ClientsDataSet.工资表.Count / 10)
Else
TotalPage = CInt(Mym.ClientsDataSet.工资表.Count / 10) + 1
End If

For i As Integer = 1 To TotalPage
Me.streamToPrint = Nothing
e.HasMorePages = True
If i = TotalPage Then
For a As Integer = (i - 1) * 10 To Mym.ClientsDataSet.工资表.Count - 1
Me.streamToPrint = Me.streamToPrint + " —————————————————————————————————————————————————————---" + Chr(10)
Me.streamToPrint = Me.streamToPrint + "| 姓名 |工资总额|加班费|请假扣除|考勤扣除| 罚款 |迟到扣除|住房公积金|医疗保险|失业保险|养老保险|实发工资|" + Chr(10)
Me.streamToPrint = Me.streamToPrint + " —————————————————————————————————————————————————————---" + Chr(10)
Me.streamToPrint = Me.streamToPrint + "|" + Mym.ClientsDataSet.工资表.Item(a).姓名.PadRight(12, CChar(" ")) + "|" + CStr(Mym.ClientsDataSet.工资表.Item(a).工资总额).PadLeft(8, CChar(" ")) + "|" + CStr(Mym.ClientsDataSet.工资表.Item(a).加班费).PadLeft(6, CChar(" ")) + "|" + CStr(Mym.ClientsDataSet.工资表.Item(a).请假扣除).PadLeft(8, CChar(" ")) + "|" + CStr(Mym.ClientsDataSet.工资表.Item(a).考勤扣除).PadLeft(8, CChar(" ")) + "|" + CStr(Mym.ClientsDataSet.工资表.Item(a).罚款).PadLeft(8, CChar(" ")) + "|" + CStr(Mym.ClientsDataSet.工资表.Item(a).迟到单价 * Mym.ClientsDataSet.工资表.Item(a).迟到分钟数).PadLeft(8, CChar(" ")) + "|" + CStr(Mym.ClientsDataSet.工资表.Item(a).住房公积金).PadLeft(10, CChar(" ")) + "|" + CStr(Mym.ClientsDataSet.工资表.Item(a).医疗保险).PadLeft(8, CChar(" ")) + "|" + CStr(Mym.ClientsDataSet.工资表.Item(a).失业保险).PadLeft(8, CChar(" ")) + "|" + CStr(Mym.ClientsDataSet.工资表.Item(a).养老保险).PadLeft(8, CChar(" ")) + "|" + CStr(Mym.ClientsDataSet.工资表.Item(a).实发工资).PadLeft(8, CChar(" ")) + "|" + Chr(10)
Next
Me.streamToPrint = Me.streamToPrint + " —————————————————————————————————————————————————————---" + Chr(10)
e.Graphics.DrawString(Me.streamToPrint, New Font("宋体", 12), Brushes.Black, 0, 0)
PrintOnNextPage = True
Else
For a As Integer = (i - 1) * 10 To i * 10 - 1
Me.streamToPrint = Me.streamToPrint + " —————————————————————————————————————————————————————---" + Chr(10)
Me.streamToPrint = Me.streamToPrint + "| 姓名 |工资总额|加班费|请假扣除|考勤扣除| 罚款 |迟到扣除|住房公积金|医疗保险|失业保险|养老保险|实发工资|" + Chr(10)
Me.streamToPrint = Me.streamToPrint + " —————————————————————————————————————————————————————---" + Chr(10)
Me.streamToPrint = Me.streamToPrint + "|" + Mym.ClientsDataSet.工资表.Item(a).姓名.PadRight(12, CChar(" ")) + "|" + CStr(Mym.ClientsDataSet.工资表.Item(a).工资总额).PadLeft(8, CChar(" ")) + "|" + CStr(Mym.ClientsDataSet.工资表.Item(a).加班费).PadLeft(6, CChar(" ")) + "|" + CStr(Mym.ClientsDataSet.工资表.Item(a).请假扣除).PadLeft(8, CChar(" ")) + "|" + CStr(Mym.ClientsDataSet.工资表.Item(a).考勤扣除).PadLeft(8, CChar(" ")) + "|" + CStr(Mym.ClientsDataSet.工资表.Item(a).罚款).PadLeft(8, CChar(" ")) + "|" + CStr(Mym.ClientsDataSet.工资表.Item(a).迟到单价 * Mym.ClientsDataSet.工资表.Item(a).迟到分钟数).PadLeft(8, CChar(" ")) + "|" + CStr(Mym.ClientsDataSet.工资表.Item(a).住房公积金).PadLeft(10, CChar(" ")) + "|" + CStr(Mym.ClientsDataSet.工资表.Item(a).医疗保险).PadLeft(8, CChar(" ")) + "|" + CStr(Mym.ClientsDataSet.工资表.Item(a).失业保险).PadLeft(8, CChar(" ")) + "|" + CStr(Mym.ClientsDataSet.工资表.Item(a).养老保险).PadLeft(8, CChar(" ")) + "|" + CStr(Mym.ClientsDataSet.工资表.Item(a).实发工资).PadLeft(8, CChar(" ")) + "|" + Chr(10)
Next
Me.streamToPrint = Me.streamToPrint + " —————————————————————————————————————————————————————---" + Chr(10)
e.Graphics.DrawString(Me.streamToPrint, New Font("宋体", 12), Brushes.Black, 0, 0)
PrintOnNextPage = True
End If
'e.Graphics.DrawString(Me.streamToPrint, New Font("宋体", 12), Brushes.Black, 0, 0)

If i + 1 > TotalPage Then
e.HasMorePages = False
Else
e.HasMorePages = True
End If

Next

End Sub
...全文
186 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
gaoyahong 2007-01-16
  • 打赏
  • 举报
回复
顶,请帮我解决
zjx1302 2007-01-04
  • 打赏
  • 举报
回复
关注中....
gaoyahong 2007-01-04
  • 打赏
  • 举报
回复
有人吗,帮看一看
gaoyahong 2007-01-04
  • 打赏
  • 举报
回复
哪位帮忙,看一看

16,554

社区成员

发帖
与我相关
我的任务
社区描述
VB技术相关讨论,主要为经典vb,即VB6.0
社区管理员
  • VB.NET
  • 水哥阿乐
  • 无·法
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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