Foxtable(狐表)用户栏目专家坐堂 → 自动调整最下方的一行的高度,以适用表高的代码应该怎么写?


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

主题:自动调整最下方的一行的高度,以适用表高的代码应该怎么写?

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


加好友 发短信
等级:超级版主 帖子:106603 积分:542186 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2019/5/11 11:31:00 [显示全部帖子]

把窗口表最大打印行数去掉

Dim fdr1 As DataRow = DataTables("意和打印记录表").Find("日期 >= #" & d1.Date & "# and 日期 < #" & d1.Date.adddays(1) & "#")
if fdr1 isnot nothing then fdr1("次数") += 1

……

'针式打印机的连进连出打印:
e.Form.Page.LeftMargin = 0 '设置左边距
e.Form.Page.RightMargin = 0 '设置右边距
e.Form.Page.TopMargin = 0 '设置上边距
e.Form.Page.BottomMargin = 0 '设置下边距
Dim doc As PrintDoc = e.Form.GernatePrintDoc()
doc.PageSetting.Width = 218  '纸张宽度为218毫米
doc.PageSetting.Height = 94  '纸张高度为94毫米
doc.AutoRotate = False  '如果纸张的宽度超过高度,要加上这行代码
Dim ndoc As new PrintDoc
Dim ra_1 As new prt.RenderArea
Dim ra_2 As new prt.RenderArea
Dim ra_3 As new prt.RenderArea
Dim flag As Boolean = False

For Each c As object In Doc.Body.Children
    If c.Gettype.name Like "*RenderText*" Then
        If flag = False Then
            ra_1.Children.Add(c.Clone)
            Dim nrt = c.clone
            nrt.height = 0
            ra_2.Children.Add(nrt)
        Else
            ra_2.Children.Add(c.clone)
        End If
    ElseIf c.Gettype.name Like "*RenderTable*" Then
        ra_3.Children.Add(c.Clone)
        Dim nrt = c.clone
        nrt.height = 0
        ra_2.Children.Add(nrt)
        flag = True
    End If
Next
ndoc.Body.Children.Add(ra_3)
nDoc.PageHeader = ra_1 '作为页眉使用
ndoc.PageFooter = ra_2
ndoc.PageSetting.LeftMargin = 0 '设置左边距
ndoc.PageSetting.RightMargin = 0 '设置右边距
ndoc.PageSetting.TopMargin = 0 '设置上边距
ndoc.PageSetting.BottomMargin = 0 '设置下边距
ndoc.PageSetting.Width = 218  '纸张宽度为218毫米
ndoc.PageSetting.Height = 94  '纸张高度为94毫米
ndoc.AutoRotate = False  '如果纸张的宽度超过高度,要加上这行代码
ndoc.Preview()


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


加好友 发短信
等级:超级版主 帖子:106603 积分:542186 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2019/5/11 14:56:00 [显示全部帖子]

……
ndoc.Body.Children.Add(ra_3)
nDoc.PageHeader = ra_1 '作为页眉使用
Dim rt = New prt.RenderText '设置文本对象的内容
rt.Text = "第[PageNo]页,共[PageCount]页" '设置文本内容
rt.Style.TextAlignHorz = prt.AlignHorzEnum.Right
rt.Style.Padding.Bottom = 2
rt.Style.Padding.right= 10
rt.Y = "Prev.Bottom + 2"
rt.Style.FontSize = 8
ra_2.Children.Add(rt)
ndoc.PageFooter = ra_2
ndoc.PageSetting.LeftMargin = 0 '设置左边距
ndoc.PageSetting.RightMargin = 0 '设置右边距
ndoc.PageSetting.TopMargin = 0 '设置上边距
ndoc.PageSetting.BottomMargin = 0 '设置下边距
ndoc.PageSetting.Width = 218  '纸张宽度为218毫米
ndoc.PageSetting.Height = 94  '纸张高度为94毫米
ndoc.AutoRotate = False  '如果纸张的宽度超过高度,要加上这行代码
ndoc.Preview()


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


加好友 发短信
等级:超级版主 帖子:106603 积分:542186 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2019/5/11 17:41:00 [显示全部帖子]

试了一下,调不了

 回到顶部