以文本方式查看主题

-  Foxtable(狐表)  (http://www.foxtable.com/bbs/index.asp)
--  专家坐堂  (http://www.foxtable.com/bbs/list.asp?boardid=2)
----  [求助]专业报表 去掉表格最后两行线  (http://www.foxtable.com/bbs/dispbbs.asp?boardid=2&id=150760)

--  作者:wei0769
--  发布时间:2020/6/6 17:50:00
--  [求助]专业报表 去掉表格最后两行线


此主题相关图片如下:1.jpg
按此在新窗口浏览图片

 


 

Dim doc As New PrintDoc() \'定义一个报表
doc.PageSetting.Width = 130 \'纸张宽度为100毫米
doc.PageSetting.Height = 190 \'纸张高度为120毫米
Doc.PageSetting.LeftMargin = 5 \'设置左边距
Doc.PageSetting.RightMargin = 5 \'设置右边距
Doc.PageSetting.TopMargin = 5 \'设置上边距
Doc.PageSetting.BottomMargin = 5 \'设置下边距

Dim rt As New prt.RenderTable() \'定义一个表格对象
doc.Body.Children.Add(rt) \'将表格对象加入到报表中
rt.Style.GridLines.All = New prt.LineDef \'将网格线类型设为默认类型
rt.Width = 120 \'表宽为150毫米
rt.Height = 170 \'表高为150毫米
rt.Rows.Count = 25 \'设置行数
rt.Cols.Count = 8 \'设置列数

rt.Style.TextAlignHorz = prt.AlignHorzEnum.Center
rt.Style.TextAlignVert = prt.AlignVertEnum.Center

rt.Rows(0).Height = 12 \'标题行高
rt.Cells(0,0).SpanCols = 8 \'合拼表头
rt.cells(0,0).text = "胸围制衣厂送货单"
rt.cells(0,0).Style.Font = New Font("宋体", 18, FontStyle.Bold) \'设置字体
rt.Rows(0).Style.Borders.All = New prt.LineDef("0mm", Color.white) \'去掉第一行表格线
rt.Rows(0).Style.Borders.Bottom = New prt.Linedef \'增加第一行底线


rt.Rows(6).Style.TextAlignHorz = prt.AlignHorzEnum.Center
rt.Rows(6).Style.TextAlignVert = prt.AlignVertEnum.Center
rt.Cells(1,1).SpanCols = 4
rt.Cells(1,6).SpanCols = 2
rt.cells(1,0).text = "地    址"
rt.cells(1,1).text = ""
rt.cells(1,5).text = "单号"
rt.cells(1,6).text = ""


rt.Cells(2,1).SpanCols = 4
rt.Cells(2,6).SpanCols = 2
rt.cells(2,0).text = "手    机"
rt.cells(2,1).text = ""
rt.cells(2,5).text = "组名"
rt.cells(2,6).text = ""

rt.Cells(3,1).SpanCols = 4
rt.Cells(3,6).SpanCols = 2
rt.cells(3,0).text = "收货单位"
rt.cells(3,1).text = ""
rt.cells(3,5).text = "款号"
rt.cells(3,6).text = ""
 
rt.Cells(4,1).SpanCols = 4
rt.Cells(4,6).SpanCols = 2
rt.cells(4,0).text = "收货地址"
rt.cells(4,1).text = ""
rt.cells(4,5).text = "颜色"
rt.cells(4,6).text = ""


rt.Cells(5,1).SpanCols = 4
rt.Cells(5,6).SpanCols = 2
rt.cells(5,5).text = "日期"
rt.cells(5,6).text = ""

 

 

 

rt.Cells(6,0).text = "尺码"
rt.Cells(6,1).text = "件数"

rt.Cells(6,2).text = "尺码"
rt.Cells(6,3).text = "件数"

rt.Cells(6,4).text = "尺码"
rt.Cells(6,5).text = "件数"

rt.Cells(6,6).text = "尺码"
rt.Cells(6,7).text = "件数"

\'rt.Rows(6).Style.TextAlignHorz = prt.AlignHorzEnum.Center
\'rt.Rows(6).Style.TextAlignVert = prt.AlignVertEnum.Center

 

 

 

 

 


rt.Rows(22).Height = 20 \'标题行高
rt.cells(22,0).text = "备注"
rt.Cells(22,1).SpanCols = 7

rt.cells(23,0).text = "收货单位"
rt.cells(24,0).text = "及经手人"
rt.Cells(23,1).SpanCols = 3
rt.cells(23,1).SpanRows = 2
rt.cells(23,1).text = "(盖章)"

rt.cells(23,4).text = "送货单位"
rt.cells(24,4).text = "及经手人"
rt.Cells(23,5).SpanCols = 3
rt.cells(23,5).SpanRows = 2
rt.cells(23,5).text = "(盖章)"
\'rt.Rows(23).Style.Borders.All = New prt.LineDef("0mm", Color.white) \'去掉第一行表格线
\'rt.Rows(23).Style.Borders.vert = New prt.LineDef("0mm", Color.white) \'去掉第一行表格线

\'rt.Rows(24).Style.Borders.All = New prt.LineDef("0mm", Color.white) \'去掉第一行表格线
\'rt.Rows(0).Style.Borders.Bottom = New prt.Linedef \'增加第一行底线


doc.Preview() \'预览

 

 

 


此主题相关图片如下:2.jpg
按此在新窗口浏览图片

 

 


此主题相关图片如下:3.jpg
按此在新窗口浏览图片

--  作者:有点蓝
--  发布时间:2020/6/7 20:34:00
--  
rt.Rows(23).Style.Borders.All = New prt.LineDef(Color.white) \'去掉第一行表格线
rt.cells(23,0).Style.Borders.All = New prt.LineDef(Color.white)
rt.cells(23,4).Style.Borders.All = New prt.LineDef(Color.white)

rt.Rows(24).Style.Borders.All = New prt.LineDef(Color.white) \'去掉第一行表格线
rt.cells(24,0).Style.Borders.All = New prt.LineDef(Color.white)
rt.cells(24,4).Style.Borders.All = New prt.LineDef(Color.white)

rt.Rows(22).Style.Borders.Bottom = New prt.Linedef \'增加第一行底线


--  作者:wei0769
--  发布时间:2020/6/8 8:31:00
--  
好的,等下试下


--  作者:wei0769
--  发布时间:2020/6/8 9:29:00
--  

加了代码,结果如下图.请看下是否用的用错

 


此主题相关图片如下:1.jpg
按此在新窗口浏览图片

 


此主题相关图片如下:2.jpg
按此在新窗口浏览图片
 

 

Dim doc As New PrintDoc() \'定义一个报表
doc.PageSetting.Width = 130 \'纸张宽度为100毫米
doc.PageSetting.Height = 190 \'纸张高度为120毫米
Doc.PageSetting.LeftMargin = 5 \'设置左边距
Doc.PageSetting.RightMargin = 5 \'设置右边距
Doc.PageSetting.TopMargin = 5 \'设置上边距
Doc.PageSetting.BottomMargin = 5 \'设置下边距

Dim rt As New prt.RenderTable() \'定义一个表格对象
doc.Body.Children.Add(rt) \'将表格对象加入到报表中
rt.Style.GridLines.All = New prt.LineDef \'将网格线类型设为默认类型
rt.Width = 120 \'表宽为150毫米
rt.Height = 170 \'表高为150毫米
rt.Rows.Count = 25 \'设置行数
rt.Cols.Count = 8 \'设置列数

rt.Style.TextAlignHorz = prt.AlignHorzEnum.Center
rt.Style.TextAlignVert = prt.AlignVertEnum.Center

rt.Rows(0).Height = 12 \'标题行高
rt.Cells(0,0).SpanCols = 8 \'合拼表头
rt.cells(0,0).text = "胸围制衣厂送货单"
rt.cells(0,0).Style.Font = New Font("宋体", 18, FontStyle.Bold) \'设置字体
rt.Rows(0).Style.Borders.All = New prt.LineDef("0mm", Color.white) \'去掉第一行表格线
rt.Rows(0).Style.Borders.Bottom = New prt.Linedef \'增加第一行底线


rt.Rows(6).Style.TextAlignHorz = prt.AlignHorzEnum.Center
rt.Rows(6).Style.TextAlignVert = prt.AlignVertEnum.Center
rt.Cells(1,1).SpanCols = 4
rt.Cells(1,6).SpanCols = 2
rt.cells(1,0).text = "地    址"
rt.cells(1,1).text = ""
rt.cells(1,5).text = "单号"
rt.cells(1,6).text = ""


rt.Cells(2,1).SpanCols = 4
rt.Cells(2,6).SpanCols = 2
rt.cells(2,0).text = "手    机"
rt.cells(2,1).text = ""
rt.cells(2,5).text = "组名"
rt.cells(2,6).text = ""

rt.Cells(3,1).SpanCols = 4
rt.Cells(3,6).SpanCols = 2
rt.cells(3,0).text = "收货单位"
rt.cells(3,1).text = ""
rt.cells(3,5).text = "款号"
rt.cells(3,6).text = ""
 
rt.Cells(4,1).SpanCols = 4
rt.Cells(4,6).SpanCols = 2
rt.cells(4,0).text = "收货地址"
rt.cells(4,1).text = ""
rt.cells(4,5).text = "颜色"
rt.cells(4,6).text = ""


rt.Cells(5,1).SpanCols = 4
rt.Cells(5,6).SpanCols = 2
rt.cells(5,5).text = "日期"
rt.cells(5,6).text = ""

 

 

 

rt.Cells(6,0).text = "尺码"
rt.Cells(6,1).text = "件数"

rt.Cells(6,2).text = "尺码"
rt.Cells(6,3).text = "件数"

rt.Cells(6,4).text = "尺码"
rt.Cells(6,5).text = "件数"

rt.Cells(6,6).text = "尺码"
rt.Cells(6,7).text = "件数"

\'rt.Rows(6).Style.TextAlignHorz = prt.AlignHorzEnum.Center
\'rt.Rows(6).Style.TextAlignVert = prt.AlignVertEnum.Center

 

 

 

 

 


rt.Rows(22).Height = 20 \'标题行高
rt.cells(22,0).text = "备注"
rt.Cells(22,1).SpanCols = 7

rt.cells(23,0).text = "收货单位"
rt.cells(24,0).text = "及经手人"
rt.Cells(23,1).SpanCols = 3
rt.cells(23,1).SpanRows = 2
rt.cells(23,1).text = "(盖章)"

rt.cells(23,4).text = "送货单位"
rt.cells(24,4).text = "及经手人"
rt.Cells(23,5).SpanCols = 3
rt.cells(23,5).SpanRows = 2
rt.cells(23,5).text = "(盖章)"

\'rt.Rows(23).Style.Borders.All = New prt.LineDef("0mm", Color.white) \'去掉第23行表格线
\'\'rt.Rows(23).Style.Borders.vert = New prt.LineDef("0mm", Color.white) \'去掉第一行表格线
\'
\'rt.Rows(24).Style.Borders.All = New prt.LineDef("0mm", Color.white) \'去掉第24行表格线
\'\'rt.Rows(0).Style.Borders.Bottom = New prt.Linedef \'增加第一行底线

rt.Rows(23).Style.Borders.All = New prt.LineDef(Color.white) \'去掉第一行表格线
rt.cells(23,0).Style.Borders.All = New prt.LineDef(Color.white)
rt.cells(23,4).Style.Borders.All = New prt.LineDef(Color.white)


rt.Rows(24).Style.Borders.All = New prt.LineDef(Color.white) \'去掉第一行表格线
rt.cells(24,0).Style.Borders.All = New prt.LineDef(Color.white)
rt.cells(24,4).Style.Borders.All = New prt.LineDef(Color.white)


rt.Rows(22).Style.Borders.Bottom = New prt.Linedef \'增加第一行底线


doc.Preview() \'预览


[此贴子已经被作者于2020/6/8 9:32:26编辑过]

--  作者:有点蓝
--  发布时间:2020/6/8 9:52:00
--  
应该没有问题的,打印一张效果看看,或者试试改为

rt.Rows(22).Style.Borders.Bottom = New prt.Linedef(1,color.black) \'增加第一行底线

--  作者:wei0769
--  发布时间:2020/6/8 11:41:00
--  

图片点击可在新窗口打开查看此主题相关图片如下:3.jpg
图片点击可在新窗口打开查看

图片点击可在新窗口打开查看此主题相关图片如下:4.jpg
图片点击可在新窗口打开查看

--  作者:有点蓝
--  发布时间:2020/6/8 11:47:00
--  
试试不要设置23行为all,做设置左。右和低边框:http://www.foxtable.com/webhelp/topics/1200.htm
--  作者:wei0769
--  发布时间:2020/6/8 13:29:00
--  


此主题相关图片如下:5.jpg
按此在新窗口浏览图片

 

Dim doc As New PrintDoc() \'定义一个报表
doc.PageSetting.Width = 130 \'纸张宽度为100毫米
doc.PageSetting.Height = 190 \'纸张高度为120毫米
Doc.PageSetting.LeftMargin = 5 \'设置左边距
Doc.PageSetting.RightMargin = 5 \'设置右边距
Doc.PageSetting.TopMargin = 5 \'设置上边距
Doc.PageSetting.BottomMargin = 5 \'设置下边距

Dim rt As New prt.RenderTable() \'定义一个表格对象
doc.Body.Children.Add(rt) \'将表格对象加入到报表中
rt.Style.GridLines.All = New prt.LineDef \'将网格线类型设为默认类型
rt.Width = 120 \'表宽为150毫米
rt.Height = 170 \'表高为150毫米
rt.Rows.Count = 25 \'设置行数
rt.Cols.Count = 8 \'设置列数

rt.Style.TextAlignHorz = prt.AlignHorzEnum.Center
rt.Style.TextAlignVert = prt.AlignVertEnum.Center

rt.Rows(0).Height = 12 \'标题行高
rt.Cells(0,0).SpanCols = 8 \'合拼表头
rt.cells(0,0).text = "胸围制衣厂送货单"
rt.cells(0,0).Style.Font = New Font("宋体", 18, FontStyle.Bold) \'设置字体
rt.Rows(0).Style.Borders.All = New prt.LineDef("0mm", Color.white) \'去掉第一行表格线
rt.Rows(0).Style.Borders.Bottom = New prt.Linedef \'增加第一行底线


rt.Rows(6).Style.TextAlignHorz = prt.AlignHorzEnum.Center
rt.Rows(6).Style.TextAlignVert = prt.AlignVertEnum.Center
rt.Cells(1,1).SpanCols = 4
rt.Cells(1,6).SpanCols = 2
rt.cells(1,0).text = "地    址"
rt.cells(1,1).text = ""
rt.cells(1,5).text = "单号"
rt.cells(1,6).text = ""


rt.Cells(2,1).SpanCols = 4
rt.Cells(2,6).SpanCols = 2
rt.cells(2,0).text = "手    机"
rt.cells(2,1).text = ""
rt.cells(2,5).text = "组名"
rt.cells(2,6).text = ""

rt.Cells(3,1).SpanCols = 4
rt.Cells(3,6).SpanCols = 2
rt.cells(3,0).text = "收货单位"
rt.cells(3,1).text = ""
rt.cells(3,5).text = "款号"
rt.cells(3,6).text = ""

rt.Cells(4,1).SpanCols = 4
rt.Cells(4,6).SpanCols = 2
rt.cells(4,0).text = "收货地址"
rt.cells(4,1).text = ""
rt.cells(4,5).text = "颜色"
rt.cells(4,6).text = ""


rt.Cells(5,1).SpanCols = 4
rt.Cells(5,6).SpanCols = 2
rt.cells(5,5).text = "日期"
rt.cells(5,6).text = ""

 

 

 

rt.Cells(6,0).text = "尺码"
rt.Cells(6,1).text = "件数"

rt.Cells(6,2).text = "尺码"
rt.Cells(6,3).text = "件数"

rt.Cells(6,4).text = "尺码"
rt.Cells(6,5).text = "件数"

rt.Cells(6,6).text = "尺码"
rt.Cells(6,7).text = "件数"

 

Dim tb As Table = Tables("送货主表.送货明细")
Dim xl As Integer = Tb.Rows.count

For c As Integer = 0 To 3
    For r As Integer = 7 To 21
        If c*15+r-7 >= xl Then
            Exit For
        End If
       
        \'rt.cells(c*15+j-7,c*2).text = tb.rows(c*15+j-7)("款号")
        \'rt.cells(c*15+j-7,c*2+1).text = tb.rows(c*15+j-7)("送货数量")
        rt.cells(r,C * 2).text = tb.rows(c*15+r-7)("款号")
        rt.cells(r,c * 2 + 1).text = tb.rows(C*15+r-7)("送货数量")
       
    Next
   
Next

 

 

 

 

 

rt.Rows(23).Style.Borders.All = New prt.LineDef("0mm", Color.white) \'去掉第23行表格线
Dim i As Integer
For i = 0 To 7
    rt.cells(23,i).Style.Borders.All = New prt.LineDef("0mm", Color.white)
Next

rt.Rows(23).Style.Borders.Top = New prt.Linedef  \'补回23行顶线

rt.Rows(24).Style.Borders.All = New prt.LineDef("0mm", Color.white) \'去掉第24行表格线
For i = 0 To 7
    rt.cells(24,i).Style.Borders.All = New prt.LineDef("0mm", Color.white)
    \'rt.cells(23,1).Style.Borders.All = New prt.LineDef("0mm", Color.white)
Next

\'\'rt.Rows(23).Style.Borders.vert = New prt.LineDef("0mm", Color.white) \'去掉第一行表格线
\'
\'rt.Rows(24).Style.Borders.All = New prt.LineDef("0mm", Color.white) \'去掉第24行表格线
\'rt.Rows(0).Style.Borders.Bottom = New prt.Linedef \'增加第一行底线

 

\'
rt.Rows(22).Height = 20 \'标题行高
rt.cells(22,0).text = "备注"
rt.Cells(22,1).SpanCols = 7
Dim ss As Integer
ss = tb.Compute("sum(送货数量)")
MessageBox.show(ss)
rt.cells(22,1).text = "合计  " & ss
rt.cells(22,1).Style.TextAlignHorz = prt.AlignHorzEnum.Left
rt.cells(22,1).Style.TextAlignVert = prt.AlignVertEnum.Top

 

 

rt.cells(23,0).text = "收货单位"
rt.cells(24,0).text = "及经手人"
rt.Cells(23,1).SpanCols = 3
rt.cells(23,1).SpanRows = 2
rt.cells(23,1).text = "(盖章)"

rt.cells(23,4).text = "送货单位"
rt.cells(24,4).text = "及经手人"
rt.Cells(23,5).SpanCols = 3
rt.cells(23,5).SpanRows = 2
rt.cells(23,5).text = "(盖章)"

\'rt.Rows(23).Style.Borders.All = New prt.LineDef("0mm", Color.white) \'去掉第23行表格线
\'\'rt.Rows(23).Style.Borders.vert = New prt.LineDef("0mm", Color.white) \'去掉第一行表格线
\'
\'rt.Rows(24).Style.Borders.All = New prt.LineDef("0mm", Color.white) \'去掉第24行表格线
\'\'rt.Rows(0).Style.Borders.Bottom = New prt.Linedef \'增加第一行底线


doc.Preview() \'预览