Foxtable(狐表)用户栏目专家坐堂 → 打印出错


  共有3904人关注过本帖树形打印复制链接

主题:打印出错

帅哥哟,离线,有人找我吗?
有点色
  11楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:13837 积分:69650 威望:0 精华:0 注册:2016/11/1 14:42:00
  发帖心情 Post By:2017/5/18 14:15:00 [只看该作者]

 上传实例,或者贴出你写的代码。

 回到顶部
帅哥哟,离线,有人找我吗?
刘林
  12楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:八尾狐 帖子:1936 积分:14844 威望:0 精华:0 注册:2016/4/28 9:58:00
  发帖心情 Post By:2017/5/18 22:00:00 [只看该作者]

Dim doc As New PrintDoc
Doc.PageSetting.BottomMargin = 0
Doc.PageSetting.topMargin = 0
Doc.PageSetting.leftMargin = 0
Doc.PageSetting.rightMargin = 0
doc.PageSetting.Width = 40 '纸张宽度为100毫米
doc.PageSetting.Height = 30 '纸张高度为120毫米
Dim tbl As Table = Tables("县区_table2")
tbl.sort= "考试号"
For i As Integer = 0 To tbl.Rows.count-1
    Dim r As Row = tbl.Rows(i)
    Dim rx As new prt.RenderText
    rx.Style.Font = New Font("黑体", 10, FontStyle.Bold) '设置字体
    rx.text =  Chr(10) & "东兴区18届生地结业考试" & Chr(10)  & Chr(10) & "  考点:" & r("考点学校") &  Chr(10)  & "  考场:" & r("考试号").Substring(4,3)  &  "   座位:" & r("考试号").Substring(7,2)  & Chr(10) & "  考号:" & r("考试号") & Chr(10) & "  姓名:" & r("姓名") 
    doc.Body.Children.Add(rx)
    If i < tbl.Rows.count-1 Then
       rx.BreakAfter = prt.BreakEnum.Page
    End If
Next
doc.preview()

 

 

老师,始终要出现未次对象引入实列,关键是出错的时间是乱的,有时打印两张,有时印5张。整晕了


 回到顶部
帅哥哟,离线,有人找我吗?
有点色
  13楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:13837 积分:69650 威望:0 精华:0 注册:2016/11/1 14:42:00
  发帖心情 Post By:2017/5/18 22:43:00 [只看该作者]

12楼的代码是否报错?也就是预览的时候是否报错?预览后直接打印是否报错?

 回到顶部
帅哥哟,离线,有人找我吗?
有点色
  14楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:13837 积分:69650 威望:0 精华:0 注册:2016/11/1 14:42:00
  发帖心情 Post By:2017/5/18 22:44:00 [只看该作者]

 一次打印一页,这样写(请先看13楼)

 

Dim tbl As Table = Tables("县区_table2")
tbl.sort= "考试号"
For i As Integer = 0 To tbl.Rows.count-1
    Dim doc As New PrintDoc
    Doc.PageSetting.BottomMargin = 0
    Doc.PageSetting.topMargin = 0
    Doc.PageSetting.leftMargin = 0
    Doc.PageSetting.rightMargin = 0
    doc.PageSetting.Width = 40 '纸张宽度为100毫米
    doc.PageSetting.Height = 30 '纸张高度为120毫米
    Dim r As Row = tbl.Rows(i)
    Dim rx As new prt.RenderText
    rx.Style.Font = New Font("黑体", 10, FontStyle.Bold) '设置字体
    rx.text =  Chr(10) & "东兴区18届生地结业考试" & Chr(10)  & Chr(10) & "  考点:" & r("考点学校") &  Chr(10)  & "  考场:" & r("考试号").Substring(4,3)  &  "   座位:" & r("考试号").Substring(7,2)  & Chr(10) & "  考号:" & r("考试号") & Chr(10) & "  姓名:" & r("姓名")
    doc.Body.Children.Add(rx)
    doc.preview()
Next

 


 回到顶部
帅哥哟,离线,有人找我吗?
刘林
  15楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:八尾狐 帖子:1936 积分:14844 威望:0 精华:0 注册:2016/4/28 9:58:00
  发帖心情 Post By:2017/5/19 13:24:00 [只看该作者]

这样就更麻烦了,打一张又要点一下打印,几百张一起打这一丁点儿都不现实,我是想要实现连打,且是越快越好,因为一次就可以能打上万张。


 回到顶部
帅哥哟,离线,有人找我吗?
刘林
  16楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:八尾狐 帖子:1936 积分:14844 威望:0 精华:0 注册:2016/4/28 9:58:00
  发帖心情 Post By:2017/5/19 13:25:00 [只看该作者]

12楼代码就是要不规则出错,没发现有什么规律,有时打2张,有时打5张,有时打几十张出错,请老师帮帮我

 


 回到顶部
帅哥哟,离线,有人找我吗?
有点色
  17楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:13837 积分:69650 威望:0 精华:0 注册:2016/11/1 14:42:00
  发帖心情 Post By:2017/5/19 14:14:00 [只看该作者]

以下是引用有点色在2017/5/18 22:43:00的发言:
12楼的代码是否报错?也就是预览的时候是否报错?预览后直接打印是否报错?

 

无语,问的问题没有回答。预览时是否报错?预览后打印是否报错?请先确认是你数据问题还是打印问题。

 

doc.preview() 改成 doc.print 就是直接打印

 

 


 回到顶部
帅哥哟,离线,有人找我吗?
刘林
  18楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:八尾狐 帖子:1936 积分:14844 威望:0 精华:0 注册:2016/4/28 9:58:00
  发帖心情 Post By:2017/5/19 17:23:00 [只看该作者]

改成print就更麻烦了,一直显示打印,万一中间一张坏掉就不好整

 

Dim doc As New PrintDoc
Doc.PageSetting.BottomMargin = 0
Doc.PageSetting.topMargin = 3
Doc.PageSetting.leftMargin = 0
Doc.PageSetting.rightMargin = 0
doc.PageSetting.Width = 40 '纸张宽度为100毫米
doc.PageSetting.Height = 30 '纸张高度为120毫米
Dim tbl As Table = Tables("县区_table2")
Dim Rows As List(Of DataRow)
Rows = DataTables("生地报名库").Select("[考点学校] ='" & e.form.Controls("combobox2").text & "'", "考试号")
Dim rm As prt.RenderEmpty
For i As Integer = 0 To Rows.count-1
    rm = new prt.RenderEmpty '定义一个新的空对象
    rm.BreakBefore = prt.BreakEnum.Page '打印前换页
    doc.Body.Children.Add(rm)
    Dim rx As new prt.RenderText
    rx.Style.Font = New Font("黑体", 10, FontStyle.Bold) '设置字体
    rx.text = "东兴区18届生地结业考试" & Chr(10)  & Chr(10) & "  考点:" & Rows(i)("考点学校") &  Chr(10)  & "  考场:" & Rows(i)("考试号").Substring(4,3)  &  "   座位:" & Rows(i)("考试号").Substring(7,2)  & Chr(10) & "  考号:" & Rows(i)("考试号") & Chr(10) & "  姓名:" & Rows(i)("姓名")
    doc.Body.Children.Add(rx)
  Next
doc.preview()

 

 

 

我发现不用sort就没有出错,但又要排序,现在改成上面代码,预览是正常的,但一点打印,预览纸张就变了,打印出来也不对了,急救怎么办


 回到顶部
帅哥哟,离线,有人找我吗?
刘林
  19楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:八尾狐 帖子:1936 积分:14844 威望:0 精华:0 注册:2016/4/28 9:58:00
  发帖心情 Post By:2017/5/19 17:28:00 [只看该作者]

图片点击可在新窗口打开查看 预览是正常的,
 
 
 
 
 
图片点击可在新窗口打开查看 点打印就这样了
 

 回到顶部
帅哥哟,离线,有人找我吗?
有点色
  20楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:13837 积分:69650 威望:0 精华:0 注册:2016/11/1 14:42:00
  发帖心情 Post By:2017/5/19 17:38:00 [只看该作者]

你设置的打印的宽度或者高度,超过了打印机的宽高,就会有问题

 

doc.PageSetting.Width = 40 '纸张宽度为100毫米
doc.PageSetting.Height = 30 '纸张高度为120毫米

 

把你设置的 40、30 改小一点试试。

 

或者,你可以不预览,直接打印呢?


 回到顶部
总数 31 上一页 1 2 3 4 下一页