Foxtable(狐表)用户栏目专家坐堂 → 专业表的水平居中和垂直居中


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

主题:专业表的水平居中和垂直居中

美女呀,离线,留言给我吧!
susu312
  1楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:四尾狐 帖子:997 积分:6752 威望:0 精华:0 注册:2018/6/8 16:17:00
专业表的水平居中和垂直居中  发帖心情 Post By:2018/7/31 19:26:00 [只看该作者]

rx.Style.TextAlignHorz = prt.AlignHorzEnum.Center '水平居中
rx.Style.TextAlignVert = prt.AlignVertEnum.Center '垂直居中

老师,我用这两句还是没有水平居中?


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

 回到顶部
帅哥,在线噢!
有点蓝
  2楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:106382 积分:541051 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2018/7/31 20:33:00 [只看该作者]

请贴出完整代码!

 回到顶部
美女呀,离线,留言给我吧!
susu312
  3楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:四尾狐 帖子:997 积分:6752 威望:0 精华:0 注册:2018/6/8 16:17:00
  发帖心情 Post By:2018/7/31 22:49:00 [只看该作者]

Dim ra As prt.RenderArea
'ra = rt.Cells(15,0).Area '引用单元格的容器 我把这个注释掉了,因为用的话,就一个方框套表格,我不想要外面的方框
Dim rt1 As New prt.RenderTable() '定义一个表格对象
Dim rx1 As New prt.RenderText '定义一个文本对象
Dim CurRow1 As Row = Tables("family").Current
'加入标题
rx1.text = "家庭人员信息表"
rx1.Style.FontBold = True '字体加粗
rx1.Style.FontSize = 16 '大体大小为16磅
rx1.Style.TextAlignHorz = prt.AlignHorzEnum.Center '水平居中
rt1.Style.TextAlignHorz = prt.AlignHorzEnum.Center '水平居中
rt1.Style.TextAlignVert = prt.AlignVertEnum.Center '垂直居中
rx1.Style.Spacing.Bottom = 3 '和下面的对象(表格)距离3毫米
 
'指定行数?列数?列宽?行高
rt1.Rows.Count = 7 '设置总行数
rt1.Cols.Count = 6 '设置总列数
rt1.Height = 80 '设置表格的高度为80毫米
rt1.Rows(6).Height = 20 '设置第7行(显示备注的行)的高度为40毫米,剩余高度被平均分排到其他行

rt1.Cols(0).Width = 20 '设置前四列的宽度,
rt1.Cols(1).Width = 20 '设置前四列的宽度,
rt1.Cols(2).Width = 18 '设置前四列的宽度,
rt1.Cols(3).Width = 22 '设置前四列的宽度,
rt1.Cols(4).Width = 25
 

'设置表格样式
rt1.CellStyle.Spacing.All = 1 '单元格内容缩进1毫米
rt1.Style.GridLines.All = New prt.Linedef '设置网格线
rt1.Style.TextAlignVert = prt.AlignVertEnum.Center '内容垂直居中
rt1.Rows(6).Style.TextAlignVert = prt.AlignVertEnum.Top '唯独第7行是备注,内容靠上对齐


'下面很简单,指定每一个单元格的内容
rt1.Cells(0,0).Text= "关系"
rt1.Cells(0,1).Text= "姓名"
rt1.Cells(0,2).Text= "年龄"
rt1.Cells(0,3).Text= "政治面貌"
rt1.Cells(0,4).Text= "联系方式"
rt1.Cells(0,5).Text= "工作单位"
ra.Children.Add(rt1)
ra.Children.Add(rx1)


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

 

 

老师,我制作专业报表

 

1、先做了一页报表

2、在第二页我做了一个表格对象和一个文本对象,然后我把这两加入容器,再把容器加入报表?

但是报错,未将对象引用到对象实例,


 回到顶部
帅哥,在线噢!
有点蓝
  4楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:106382 积分:541051 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2018/7/31 23:04:00 [只看该作者]

Dim ra As new prt.RenderArea 

没看出3楼的代码和1楼的问题有什么关系

 回到顶部
美女呀,离线,留言给我吧!
susu312
  5楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:四尾狐 帖子:997 积分:6752 威望:0 精华:0 注册:2018/6/8 16:17:00
  发帖心情 Post By:2018/8/1 9:07:00 [只看该作者]

Dim ra As new prt.RenderArea
Dim rt1 As New prt.RenderTable() '定义一个表格对象
Dim rx1 As New prt.RenderText '定义一个文本对象
'加入标题
rx1.text = "家庭人员信息表"
rx1.Style.FontBold = True '字体加粗
rx1.Style.FontSize = 16 '大体大小为16磅
rx1.Style.TextAlignHorz = prt.AlignHorzEnum.Center '水平居中
rt1.Style.TextAlignHorz = prt.AlignHorzEnum.Center '水平居中
rt1.Style.TextAlignVert = prt.AlignVertEnum.Center '垂直居中
rx1.Style.Spacing.Bottom = 3 '和下面的对象(表格)距离3毫米
 
'指定行数?列数?列宽?行高
rt1.Rows.Count = 6 '设置总行数
rt1.Cols.Count = 6 '设置总列数
rt1.Height = 60 '设置表格的高度为80毫米
 

rt1.Cols(0).Width = 20 '设置前四列的宽度,
rt1.Cols(1).Width = 20 '设置前四列的宽度,
rt1.Cols(2).Width = 18 '设置前四列的宽度,
rt1.Cols(3).Width = 22 '设置前四列的宽度,
rt1.Cols(4).Width = 25
 

'设置表格样式
rt1.CellStyle.Spacing.All = 1 '单元格内容缩进1毫米
rt1.Style.GridLines.All = New prt.Linedef '设置网格线
rt1.Style.TextAlignVert = prt.AlignVertEnum.Center '内容垂直居中
rt1.Rows(6).Style.TextAlignVert = prt.AlignVertEnum.Top '唯独第7行是备注,内容靠上对齐


'下面很简单,指定每一个单元格的内容
rt1.Cells(0,0).Text= "关系"
rt1.Cells(0,0).Style.TextAlignHorz = prt.AlignHorzEnum.Center '水平居中排列
rt1.Cells(0,1).Text= "姓名"
rt1.Cells(0,1).Style.TextAlignHorz = prt.AlignHorzEnum.Center '水平居中排列
rt1.Cells(0,2).Text= "年龄"
rt1.Cells(0,2).Style.TextAlignHorz = prt.AlignHorzEnum.Center '水平居中排列
rt1.Cells(0,3).Text= "政治面貌"
rt1.Cells(0,3).Style.TextAlignHorz = prt.AlignHorzEnum.Center '水平居中排列
rt1.Cells(0,4).Text= "联系方式"
rt1.Cells(0,4).Style.TextAlignHorz = prt.AlignHorzEnum.Center '水平居中排列
rt1.Cells(0,5).Text= "工作单位"
rt1.Cells(0,5).Style.TextAlignHorz = prt.AlignHorzEnum.Center '水平居中排列

 

 

//这里是表格绑定的代码

'Dim CurRow1 As Row = Tables("person.family").Current
Dim tb As Table = Tables("family")
Dim ColNames As String() = New String(){"guanXi", "name","age", "political", "tel","job"}
For c As Integer = 0 To ColNames.Length -1
    rt1.Cells(0,c).Text = ColNames(c)
    rt1.Cols(c).Width = tb.Cols(ColNames(c)).PrintWidth
    rt1.Cells(1, c).Text = "[Fields!" & ColNames(c) & ".Value]" '设置绑定表达式
Next

 

 

ra.Children.Add(rx1)
ra.Children.Add(rt1)
doc.Body.Children.Add(rt) '将表格对象加入到报表中
doc.Body.Children.Add(ra)

 

老师:

1、数据库里,人员信息是一个表,家庭信息是一个表,之间用户主身份证建立关联,

2、报表家庭信息因此写入的应该是本人的家庭信息,

我绑定但是出错了,请老师指导一下

 


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


加好友 发短信
等级:版主 帖子:85326 积分:427815 威望:0 精华:5 注册:2012/10/18 22:13:00
  发帖心情 Post By:2018/8/1 9:10:00 [只看该作者]

这样测试没问题。你以后有问题,请贴出完整的、可以执行的代码测试。

 

Dim doc As new PrintDoc
Dim ra As new prt.RenderArea
'ra = rt.Cells(15,0).Area '引用单元格的容器 我把这个注释掉了,因为用的话,就一个方框套表格,我不想要外面的方框
Dim rt1 As New prt.RenderTable() '定义一个表格对象
Dim rx1 As New prt.RenderText '定义一个文本对象
'Dim CurRow1 As Row = Tables("family").Current
'加入标题
rx1.text = "家庭人员信息表"
rx1.Style.FontBold = True '字体加粗
rx1.Style.FontSize = 16 '大体大小为16磅
rx1.Style.TextAlignHorz = prt.AlignHorzEnum.Center '水平居中
rt1.Style.TextAlignHorz = prt.AlignHorzEnum.Center '水平居中
rt1.Style.TextAlignVert = prt.AlignVertEnum.Center '垂直居中
rx1.Style.Spacing.Bottom = 3 '和下面的对象(表格)距离3毫米
 
'指定行数?列数?列宽?行高
rt1.Rows.Count = 7 '设置总行数
rt1.Cols.Count = 6 '设置总列数
rt1.Height = 80 '设置表格的高度为80毫米
rt1.Rows(6).Height = 20 '设置第7行(显示备注的行)的高度为40毫米,剩余高度被平均分排到其他行

rt1.Cols(0).Width = 20 '设置前四列的宽度,
rt1.Cols(1).Width = 20 '设置前四列的宽度,
rt1.Cols(2).Width = 18 '设置前四列的宽度,
rt1.Cols(3).Width = 22 '设置前四列的宽度,
rt1.Cols(4).Width = 25
 

'设置表格样式
rt1.CellStyle.Spacing.All = 1 '单元格内容缩进1毫米
rt1.Style.GridLines.All = New prt.Linedef '设置网格线
rt1.Style.TextAlignVert = prt.AlignVertEnum.Center '内容垂直居中
rt1.Rows(6).Style.TextAlignVert = prt.AlignVertEnum.Top '唯独第7行是备注,内容靠上对齐


'下面很简单,指定每一个单元格的内容
rt1.Cells(0,0).Text= "关系"
rt1.Cells(0,1).Text= "姓名"
rt1.Cells(0,2).Text= "年龄"
rt1.Cells(0,3).Text= "政治面貌"
rt1.Cells(0,4).Text= "联系方式"
rt1.Cells(0,5).Text= "工作单位"

rt1.Cells(1,5).Text= "工作单位"
ra.Children.Add(rt1)
ra.Children.Add(rx1)


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


 回到顶部
美女呀,离线,留言给我吧!
susu312
  7楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:四尾狐 帖子:997 积分:6752 威望:0 精华:0 注册:2018/6/8 16:17:00
  发帖心情 Post By:2018/8/1 10:53:00 [只看该作者]

老师,是这这个基础上需要把家庭信息绑定到容器中的表格里

 

1、比如1个人对5跟家人

2、现在是不会把这个5个人从家庭信息表里面提取出来,绑定到这个容器中的表格里

 

请老师指导一下


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


加好友 发短信
等级:版主 帖子:85326 积分:427815 威望:0 精华:5 注册:2012/10/18 22:13:00
  发帖心情 Post By:2018/8/1 10:56:00 [只看该作者]


 回到顶部
美女呀,离线,留言给我吧!
susu312
  9楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:四尾狐 帖子:997 积分:6752 威望:0 精华:0 注册:2018/6/8 16:17:00
  发帖心情 Post By:2018/8/1 13:05:00 [只看该作者]

老师,去掉专业报表左边的页和大纲是咋弄的来着,您给我个参考例子哈?


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


加好友 发短信
等级:版主 帖子:85326 积分:427815 威望:0 精华:5 注册:2012/10/18 22:13:00
  发帖心情 Post By:2018/8/1 14:48:00 [只看该作者]

以下是引用susu312在2018/8/1 13:05:00的发言:

老师,去掉专业报表左边的页和大纲是咋弄的来着,您给我个参考例子哈?

 

http://www.foxtable.com/bbs/dispbbs.asp?BoardID=2&ID=122281&skin=0

 


 回到顶部
总数 12 1 2 下一页