以文本方式查看主题 - Foxtable(狐表) (http://foxtable.net/bbs/index.asp) -- 专家坐堂 (http://foxtable.net/bbs/list.asp?boardid=2) ---- [求助]自动选择,逐行打印? (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=29699) |
-- 作者:红颜 -- 发布时间:2013/3/11 23:46:00 -- [求助]自动选择,逐行打印? 窗口打印,自动选择,代码如下: Dim sp As WinForm.SplitPanel = e.Form.Controls("SplitContainer1").Panel1
出现的问题是:如果当前行是第3行,会先打第3行,同时返回第1行。打印顺序是3-1-2;不是1-2-3。
我的愿望是按打印按钮后,不管当前行是哪一行,首先返回"打印状态" = 0的第一行,然后逐行往下打。打完后点击按钮是不会继续打印的。
测试后发现执行顺序是:doc.Preview()-- t.Position = i-- Tables("收费明细").Current("打印状态") = True 没办法,另加了个条件判断,达到了预想效果,最后修改代码如下: Dim t As Table = Tables("SFMX") [此贴子已经被作者于2013-3-12 0:45:50编辑过]
|
-- 作者:狐狸爸爸 -- 发布时间:2013/3/12 8:16:00 -- Dim sp As WinForm.SplitPanel = e.Form.Controls("SplitContainer1").Panel1 Dim doc As PrintDoc = e.Form.GernatePrintDoc(sp) Dim t As Table = Tables("收费明细") For i As Integer = 0 To t.Rows.Count -1 If t.Rows(i)("打印状态") = 0 Then t.Position = i doc.Preview() r.Rows(i)("打印状态") = 1 Exit For End If Next |