Foxtable(狐表)用户栏目专家坐堂 → 容器中加入过长文本的问题。


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

主题:容器中加入过长文本的问题。

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


加好友 发短信
等级:婴狐 帖子:15 积分:281 威望:0 精华:0 注册:2011/5/2 15:23:00
容器中加入过长文本的问题。  发帖心情 Post By:2012/1/17 11:30:00 [只看该作者]

在容器中加入文本时,如果文本是一个长度不定的变量,怎样在一个容器中使其自动分页打印?

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


加好友 发短信
等级:管理员 帖子:47497 积分:251403 威望:0 精华:91 注册:2008/6/17 17:14:00
  发帖心情 Post By:2012/1/17 11:46:00 [只看该作者]

这是没有办法的。

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


加好友 发短信
等级:婴狐 帖子:15 积分:281 威望:0 精华:0 注册:2011/5/2 15:23:00
容器中加入过长文本的问题。  发帖心情 Post By:2012/1/17 11:50:00 [只看该作者]

现在的情况是短些的文本没问题,长的文本就另起一页开始打印,而且如果一页打印不下也看不到了。

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


加好友 发短信 一级勋章
等级:超级版主 帖子:4109 积分:23338 威望:0 精华:21 注册:2008/9/1 20:07:00
  发帖心情 Post By:2012/1/17 12:01:00 [只看该作者]

不要指定容器的尺寸试试呢?就是删除这两句

如果你没有明确指定RenderArea的尺寸,那么RenderArea会自动根据子对象的位置和尺寸调整到最佳大小。

 

rt.Width = "Parent.Width" '宽度等于容器宽度
rt
.Height = "Parent.Height" '高度等于容器高度

[此贴子已经被作者于2012-1-17 12:01:34编辑过]

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


加好友 发短信
等级:管理员 帖子:47497 积分:251403 威望:0 精华:91 注册:2008/6/17 17:14:00
  发帖心情 Post By:2012/1/17 12:11:00 [只看该作者]

是的,不指定尺寸,就会自动换页。

 

 


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


加好友 发短信
等级:婴狐 帖子:15 积分:281 威望:0 精华:0 注册:2011/5/2 15:23:00
容器中加入过长文本的问题。  发帖心情 Post By:2012/1/18 16:35:00 [只看该作者]

这个我没有指定,换页能自动换,不过是整个文本内容全部换到下一页,而且第二页打印不下也不再自动换页

 回到顶部
帅哥哟,离线,有人找我吗?
狐狸爸爸
  7楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:管理员 帖子:47497 积分:251403 威望:0 精华:91 注册:2008/6/17 17:14:00
  发帖心情 Post By:2012/1/18 16:39:00 [只看该作者]

我测试可以自动换页啊,你看看:

 

Dim doc As New PrintDoc '定义一个报表
Dim rt As New prt.RenderText '定义一个文本对象
Dim s As String
For i As Integer = 1 To 100
    s = s & "hello foxtbale "  & i & vbcrlf
Next
rt.Text = s '设置文本对象的内容
doc.Body.Children.Add(rt) '将文本对象加入到报表
doc.Preview() '预览


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


加好友 发短信
等级:婴狐 帖子:15 积分:281 威望:0 精华:0 注册:2011/5/2 15:23:00
  发帖心情 Post By:2012/1/18 16:50:00 [只看该作者]

文本加入报表换页没有问题,加入容器就不行。另外,是否可以判断容器内文本的行数?

 回到顶部
帅哥哟,离线,有人找我吗?
狐狸爸爸
  9楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:管理员 帖子:47497 积分:251403 威望:0 精华:91 注册:2008/6/17 17:14:00
  发帖心情 Post By:2012/1/18 16:55:00 [只看该作者]

加入容器,也可以自动换页的:

 

Dim doc As New PrintDoc '定义一个报表
Dim rt As New prt.RenderText '定义一个文本对象
Dim ra As new prt.RenderArea
Dim s As String
For i As Integer = 1 To 100
    s = s & "hello foxtbale "  & i & vbcrlf
Next
rt.Text = s '设置文本对象的内容
ra.Width = "Parent.Width"
ra.Children.Add(rt)
doc.Body.Children.Add(ra) '将文本对象加入到报表
doc.Preview() '预览

 

 


 回到顶部