Foxtable(狐表)用户栏目专家坐堂 → [求助]


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

主题:[求助]

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


加好友 发短信
等级:六尾狐 帖子:1495 积分:12175 威望:0 精华:0 注册:2013/3/19 16:41:00
[求助]  发帖心情 Post By:2016/6/27 17:40:00 [显示全部帖子]

请问专业报表中如何实现以下问题:

1、控制指定单元格内的字体、字号、是否居中等。

2、在表格外加一行备注,如何实现。是不是一定要写在表格内才能实现。

3、怎样才能在一张A4纸上打印两个表,就是一联、二联。

4、怎样才能不经过预览而直接打印。

谢谢各位老师。

代码:

Dim doc As New PrintDoc '定义一个报表
Dim rt As New prt.RenderTable() '定义一个表格对象
Dim rx As New prt.RenderText '定义一个文本对象
Dim CurRow As Row = Tables("出差记录").Current
'加入标题
rx.text = "青铜峡市铝业学校出差通知单"
rx.Style.FontBold = True '字体加粗
rx.Style.FontSize = 16 '大体大小为16磅
rx.Style.TextAlignHorz = prt.AlignHorzEnum.Center '水平居中排列
rx.Style.Spacing.Bottom = 3 '和下面的对象(表格)距离3毫米
doc.Body.Children.Add(rx) '加入到报表中
'指定行数?列数?列宽?行高
rt.Rows.Count = 7 '设置总行数
rt.Cols.Count = 16 '设置总列数
rt.Height = 70 '设置表格的高度为80毫米
rt.Cols(0).Width = 10 '设置列的宽度,剩余的宽度被分配最后列
rt.Cols(1).Width = 10
rt.Cols(2).Width = 10
rt.Cols(3).Width = 10
rt.Cols(4).Width = 10
rt.Cols(5).Width = 10
rt.Cols(6).Width = 10
rt.Cols(7).Width = 10
rt.Cols(8).Width = 10
rt.Cols(9).Width = 10
rt.Cols(10).Width = 10
rt.Cols(11).Width = 10
rt.Cols(12).Width = 10
rt.Cols(13).Width = 10
rt.Cols(14).Width = 10
rt.Cols(15).Width = 10

'设置合并单元格
rt.Cells(0,0).SpanCols =2     '第1行第1个单元格向右合并2列
rt.Cells(0,2).SpanCols =2
rt.Cells(0,4).SpanCols =2
rt.Cells(0,6).SpanCols = 2
rt.Cells(0,8).SpanCols =2
rt.Cells(0,10).SpanCols =6

 


rt.Cells(1,0).SpanCols = 2      '第二行
rt.Cells(1,2).SpanCols =14
rt.Cells(2,0).SpanCols = 2     '第三行
rt.Cells(2,2).SpanCols = 8
rt.Cells(2,10).SpanCols = 2
rt.Cells(2,12).SpanCols =6

rt.Cells(3,0).SpanCols =2      '第四行
rt.Cells(3,2).SpanCols =14

rt.Cells(4,0).SpanCols =2      '第五行
rt.Cells(4,2).SpanCols =14

rt.Cells(4,0).SpanCols =2      '第五行
rt.Cells(4,2).SpanCols =14

rt.Cells(5,0).SpanCols =2     '第六行
rt.Cells(5,2).SpanCols =2
rt.Cells(5,4).SpanCols =2
rt.Cells(5,6).SpanCols =2     
rt.Cells(5,8).SpanCols =2
rt.Cells(5,10).SpanCols =2    
rt.Cells(5,12).SpanCols =2
rt.Cells(5,14).SpanCols =2


rt.Cells(6,0).SpanCols =2     '第七行
rt.Cells(6,2).SpanCols =3
rt.Cells(6,5).SpanCols =2     
rt.Cells(6,7).SpanCols =3
rt.Cells(6,10).SpanCols =2    
rt.Cells(6,12).SpanCols =4


'设置表格样式
rt.CellStyle.Spacing.All = 1 '单元格内容缩进1毫米
rt.Style.GridLines.All = New prt.Linedef '设置网格线
rt.Style.TextAlignVert = prt.AlignVertEnum.Center '内容垂直居中
rt.Style.TextAlignHorz = prt.AlignHorzEnum.Center '水平居中

 

'下面很简单,指定每一个单元格的内容
rt.Cells(0,0).Text= "编号"
rt.Cells(0,2).Text = CurRow("编号")
rt.Cells(0,4).Text= "类别"
rt.Cells(0,6).Text = CurRow("类别")
rt.Cells(0,8).Text= "时限"
rt.Cells(0,10).Text = CurRow("时限")

rt.Cells(1,0).Text= "出差人"                   '第二行
rt.Cells(1,2).Text = CurRow("出差人")

rt.Cells(2,0).Text= "地点"                     '第三行
rt.Cells(2,2).Text = CurRow("地点")
rt.Cells(2,10).Text= "通知时间"
rt.Cells(2,12).Text = CurRow ("通知时间")

rt.Cells(3,0).Text= "依据"                     '第四行
rt.Cells(3,2).Text = CurRow("依据")

rt.Cells(4,0).Text= "要求"                     '第五行
rt.Cells(4,2).Text = CurRow("要求")

rt.Cells(5,0).Text= "天数"                     '第六行
rt.Cells(5,2).Text = CurRow("天数")
rt.Cells(5,4).Text= "交通费"
rt.Cells(5,6).Text = CurRow("交通费")
rt.Cells(5,8).Text= "伙食费"
rt.Cells(5,10).Text = CurRow("伙食费")
rt.Cells(5,12).Text= "住宿费"
rt.Cells(5,14).Text = CurRow("住宿费")

rt.Cells(6,0).Text= "负责人"                   '第七行
rt.Cells(6,5).Text ="主管领导"
rt.Cells(6,10).Text ="校长审批"


doc.Body.Children.Add(rt) '将表格对象加入到报表中
Doc.Preview()


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


加好友 发短信
等级:六尾狐 帖子:1495 积分:12175 威望:0 精华:0 注册:2013/3/19 16:41:00
  发帖心情 Post By:2016/6/27 18:04:00 [显示全部帖子]

老师,设计成两个表格,位置不知道怎么确定。因为两个表是两联单据,要剪裁。


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


加好友 发短信
等级:六尾狐 帖子:1495 积分:12175 威望:0 精华:0 注册:2013/3/19 16:41:00
  发帖心情 Post By:2016/6/27 18:08:00 [显示全部帖子]

这个对象怎么加呢,请老师帮助写个代码。谢谢。


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


加好友 发短信
等级:六尾狐 帖子:1495 积分:12175 威望:0 精华:0 注册:2013/3/19 16:41:00
  发帖心情 Post By:2016/6/27 18:41:00 [显示全部帖子]

我按你说的做过,但出错我就不知怎么做了。请指点呀。

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


加好友 发短信
等级:六尾狐 帖子:1495 积分:12175 威望:0 精华:0 注册:2013/3/19 16:41:00
  发帖心情 Post By:2016/6/27 21:03:00 [显示全部帖子]

Dim doc As New PrintDoc '定义一个报表
Dim rt As New prt.RenderTable() '定义一个表格对象
Dim rx As New prt.RenderText '定义一个文本对象
Dim CurRow As Row = Tables("出差记录").Current
'加入标题
rx.text = "青铜峡市铝业学校出差通知单"
rx.Style.FontBold = True '字体加粗
rx.Style.FontSize = 16 '大体大小为16磅
rx.Style.TextAlignHorz = prt.AlignHorzEnum.Center '水平居中排列
rx.Style.Spacing.Bottom = 3 '和下面的对象(表格)距离3毫米
doc.Body.Children.Add(rx) '加入到报表中
'指定行数?列数?列宽?行高
rt.Rows.Count = 7 '设置总行数
rt.Cols.Count = 16 '设置总列数
rt.Height = 70 '设置表格的高度为80毫米
rt.Cols(0).Width = 10 '设置列的宽度,剩余的宽度被分配最后列
rt.Cols(1).Width = 10
rt.Cols(2).Width = 10
rt.Cols(3).Width = 10
rt.Cols(4).Width = 10
rt.Cols(5).Width = 10
rt.Cols(6).Width = 10
rt.Cols(7).Width = 10
rt.Cols(8).Width = 10
rt.Cols(9).Width = 10
rt.Cols(10).Width = 10
rt.Cols(11).Width = 10
rt.Cols(12).Width = 10
rt.Cols(13).Width = 10
rt.Cols(14).Width = 10
rt.Cols(15).Width = 10

'设置合并单元格
rt.Cells(0,0).SpanCols =2     '第1行第1个单元格向右合并2列
rt.Cells(0,2).SpanCols =2
rt.Cells(0,4).SpanCols =2
rt.Cells(0,6).SpanCols = 2
rt.Cells(0,8).SpanCols =2
rt.Cells(0,10).SpanCols =6

 


rt.Cells(1,0).SpanCols = 2      '第二行
rt.Cells(1,2).SpanCols =14
rt.Cells(2,0).SpanCols = 2     '第三行
rt.Cells(2,2).SpanCols = 8
rt.Cells(2,10).SpanCols = 2
rt.Cells(2,12).SpanCols =6

rt.Cells(3,0).SpanCols =2      '第四行
rt.Cells(3,2).SpanCols =14

rt.Cells(4,0).SpanCols =2      '第五行
rt.Cells(4,2).SpanCols =14

rt.Cells(4,0).SpanCols =2      '第五行
rt.Cells(4,2).SpanCols =14

rt.Cells(5,0).SpanCols =2     '第六行
rt.Cells(5,2).SpanCols =2
rt.Cells(5,4).SpanCols =2
rt.Cells(5,6).SpanCols =2     
rt.Cells(5,8).SpanCols =2
rt.Cells(5,10).SpanCols =2    
rt.Cells(5,12).SpanCols =2
rt.Cells(5,14).SpanCols =2


rt.Cells(6,0).SpanCols =2     '第七行
rt.Cells(6,2).SpanCols =3
rt.Cells(6,5).SpanCols =2     
rt.Cells(6,7).SpanCols =3
rt.Cells(6,10).SpanCols =2    
rt.Cells(6,12).SpanCols =4


'设置表格样式
rt.CellStyle.Spacing.All = 1 '单元格内容缩进1毫米
rt.Style.GridLines.All = New prt.Linedef '设置网格线
rt.Style.TextAlignVert = prt.AlignVertEnum.Center '内容垂直居中
rt.Style.TextAlignHorz = prt.AlignHorzEnum.Center '水平居中

 

'下面很简单,指定每一个单元格的内容
rt.Cells(0,0).Text= "编  号"
rt.Cells(0,2).Text = CurRow("编号")
rt.Cells(0,4).Text= "类  别"
rt.Cells(0,6).Text = CurRow("类别")
rt.Cells(0,8).Text= "时  限"
rt.Cells(0,10).Text = CurRow("时限")

rt.Cells(1,0).Text= "出 差 人"                   '第二行
rt.Cells(1,2).Text = CurRow("出差人")

rt.Cells(2,0).Text= "地点"                     '第三行
rt.Cells(2,2).Text = CurRow("地点")
rt.Cells(2,10).Text= "通知时间"
rt.Cells(2,12).Text = CurRow ("通知时间")

rt.Cells(3,0).Text= "依据"                     '第四行
rt.Cells(3,2).Text = CurRow("依据")

rt.Cells(4,0).Text= "要求"                     '第五行
rt.Cells(4,2).Text = CurRow("要求")

rt.Cells(5,0).Text= "天数"                     '第六行
rt.Cells(5,2).Text = CurRow("天数")
rt.Cells(5,4).Text= "交通费"
rt.Cells(5,6).Text = CurRow("交通费")
rt.Cells(5,8).Text= "伙食费"
rt.Cells(5,10).Text = CurRow("伙食费")
rt.Cells(5,12).Text= "住宿费"
rt.Cells(5,14).Text = CurRow("住宿费")

rt.Cells(6,0).Text= "负责人"                   '第七行
rt.Cells(6,5).Text ="主管领导"
rt.Cells(6,10).Text ="校长审批"
doc.Body.Children.Add(rt) '将表格对象加入到报表中

doc.Preview() '预览

 


 回到顶部