以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.net/bbs/index.asp)
--  专家坐堂  (http://foxtable.net/bbs/list.asp?boardid=2)
----  打印  (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=101918)

--  作者:刘林
--  发布时间:2017/6/9 17:48:00
--  打印

 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:dy.rar

老师,我的想法是当起页为某页,结束页为0时就起始页打印到最后,但打几页就出现:另一个程序正在使用此文件,进程无法访问。

当起始页为某页,终止页为某页时打印就从某页到某页,打几页后还是出现个:另一个程序正在使用此文件,进程无法访问。

请问要如何处理更好,谢谢

 


--  作者:刘林
--  发布时间:2017/6/9 17:49:00
--  
有时出现:已删除等候打印的文件。
--  作者:有点色
--  发布时间:2017/6/9 17:53:00
--  
 做个实例发上来吧,一个窗口无法测试。
--  作者:刘林
--  发布时间:2017/6/9 21:33:00
--  

e.Form.ResumeRedraw
e.Form.StopRedraw
Dim doc As New PrintDoc
Doc.PageSetting.BottomMargin = 0
Doc.PageSetting.topMargin = 5
Doc.PageSetting.leftMargin = 0
Doc.PageSetting.rightMargin = 0
doc.PageSetting.Width = 60 \'纸张宽度为100毫米
doc.PageSetting.Height = 30 \'纸张高度为120毫米
doc.AutoRotate = False
Doc.PrinterName =e.form.controls("combobox1").Text
Dim tbl As Table = Tables("小学考试用表_table1")
tbl.sort= "考号"
Dim rm As prt.RenderEmpty \'定一个空对象
Dim q As Integer = e.Form.Controls("textbox1").value
Dim z As Integer = e.Form.Controls("textbox2").value
\'Dim rm As prt.RenderEmpty \'定一个空对象

    For i As Integer = 0 To tbl.Rows.count-1
        rm = new prt.RenderEmpty \'定义一个新的空对象
        rm.BreakBefore = prt.BreakEnum.Page \'打印前换页
        doc.Body.Children.Add(rm)
        Dim r As Row = tbl.Rows(i)
        Dim rx As new prt.RenderText
        rx.Style.Font = New Font("黑体", 18, FontStyle.Bold) \'设置字体
        rx.style.TextAlignHorz=prt.AlignHorzEnum.Center
        rx.text =  r("考试名称") & "考试"
        doc.Body.Children.Add(rx)
        Dim rx2 As new prt.RenderText
        rx2.Style.Font = New Font("黑体", 10, FontStyle.Bold) \'设置字体
        rx2.style.TextAlignHorz=prt.AlignHorzEnum.Center
        rx2.text = r("学校班级")
        rx2.Style.Spacing.Bottom = 3
        doc.Body.Children.Add(rx2)
        Dim rx1 As new prt.RenderText
        rx1.Style.Font = New Font("黑体", 16, FontStyle.Bold) \'设置字体
        rx1.style.TextAlignHorz=prt.AlignHorzEnum.Center
        rx1.text = r("姓名") & "  " & r("考号")
        doc.Body.Children.Add(rx1)
    Next
doc.print

 

 

这段代码出现几种错误  1、 已删除等候打印的文件。

                              2、值不能为空。参数名: ptr

                             3、另一个程序正在使用此文件,进程无法访问。

                             4、未将对象引用设置到对象的实例。

 

请求老师想办法

 


--  作者:有点蓝
--  发布时间:2017/6/9 21:43:00
--  
看不出代码和您问题的关系,请创建项目做个可以测试的例子
--  作者:刘林
--  发布时间:2017/6/9 21:59:00
--  
做的例子大于,有什么办法,能不能qq直传
--  作者:刘林
--  发布时间:2017/6/9 22:01:00
--  
或者远程帮看下,QQ924833035,这个打印一至没整好,最先我觉得fox功能强大,打印应该是很基本的,结果各种都做了还是不得行
--  作者:有点蓝
--  发布时间:2017/6/9 22:02:00
--  
不需要上传整个项目。创建一个项目,导出和打印有关的表和窗口,到新的项目里。然后上传新的项目
--  作者:刘林
--  发布时间:2017/6/9 22:05:00
--  

因为这个要用到项目里的有关函数,重做很麻烦,我采取删掉部分内容的办法,删什么减大小最快

 


--  作者:刘林
--  发布时间:2017/6/9 22:07:00
--  

还是强烈建议打印控件改进,要实现个打印好复杂了哟